Publishing Workflow
LangCTL uses a draft/published workflow similar to staging/production environments, ensuring only reviewed translations reach your users.
Draft vs Published
| State | Purpose | Included in Export |
|---|---|---|
| Draft | Work in progress, under review | No (unless —include-drafts) |
| Published | Ready for production | Yes (default) |
Publishing Keys
langctl keys publish my-app home.welcome
langctl keys publish my-app auth.* dashboard.*
langctl keys bulk-publish my-app --module auth langctl keys create my-app feature.title --value-en "New Feature" --draft
langctl keys get my-app feature.title
langctl keys publish my-app feature.title
langctl export my-app -l en --published-only 💡
Tip
Use drafts for new translations, AI-generated content, or work-in-progress. Publish only after review.
Best Practices
- Default to Draft - Create new keys as drafts
- Review Before Publishing - Check accuracy and context
- Bulk Publish - Publish complete modules at once
- Production Exports - Always use —published-only for production
Next Steps
- Translation Management - Manage translations
- Module Organization - Organize by module
- Collaboration - Team workflows