TheDocumentation Index
Fetch the complete documentation index at: https://docs.gleef.eu/llms.txt
Use this file to discover all available pages before exploring further.
gleef push command uploads your local translation changes (new keys and edits) to Gleef. It is the standard command for syncing your local files to Gleef.
If you want Gleef to generate AI translations and merge them back into your local files in one step, use
gleef translate instead.Usage
Options
| Flag | Short | Description |
|---|---|---|
--match | -m | Filter translations by key pattern |
--namespace | -n | Filter translations by namespace/file pattern (e.g., “auth” or “auth|common”) |
--skip-review | -s | Publish translations immediately instead of creating drafts |
What it does
Thepush command:
- Analyzes local files - Compares your local translations with remote state
- Detects changes - Identifies new keys and modified translations
- Handles conflicts - Checks for conflicts with remote edits
- Uploads changes - Pushes your translations to Gleef
- Creates drafts - Sets up translations for team review (unless
--skip-reviewis used)
gleef push uploads what you have locally. Translations for missing locales are produced by Gleef after the push and become available via gleef pull. To generate AI translations and immediately write them back to your local files in one step, use gleef translate.Basic Usage
Push All Changes
Filter by Key Pattern
Filter by Namespace
Skip Review Process
Example Output
Pushing Changes
No Changes to Push
Pattern Matching
The--match flag accepts a JavaScript regular expression that is tested against each translation key. It is unanchored, so a pattern matches if it appears anywhere in the key. If the pattern isn’t valid regex, it falls back to a plain substring check.
This is regex, not a glob.
. matches any character and * means “zero or more of the previous character”, so a pattern like *.title is invalid regex and won’t behave like a glob.Common Patterns
Complex Patterns
Conflict Resolution
If there are conflicts with remotely edited translations, the command will stop and show details:Resolving Conflicts
- Update locally - Change your local value to match the remote
- Update remotely - Change the value in Gleef Studio
- Pull first - Run
gleef pullto get latest changes, then push
When to Use Push vs Translate
Use gleef push when… | Use gleef translate when… |
|---|---|
| You’re adding new keys (the standard workflow) | You want AI translations written back into your local files immediately |
| You’re updating existing translations | You need the AI output available locally before running gleef pull |
| You have translations from another source | You want a single command that generates and merges translations locally |
Review Workflow
Default Behavior (Draft Mode)
By default, changes are pushed as drafts for team review:- Changes uploaded - Your edits are pushed to Gleef
- Drafts created - Changes are marked as drafts in Gleef Studio
- Team reviews - Your team can review and approve in Gleef Studio
- Pull approved - Use
gleef pullto sync approved translations
Skip Review Mode
With--skip-review, changes are published immediately:
- Automated workflows
- Non-critical updates
- When you don’t need team review
Examples
Development Workflow
Feature Development
Namespace-Specific Push
Error Handling
Common Errors
Authentication Error:gleef login to re-authenticate
Configuration Error:
gleef init or check your .gleef/config.json
Network Error:
Best Practices
- Pull latest changes -
gleef pullto get recent updates - Use patterns for targeted updates - Filter with
--matchfor focused pushes - Review in Gleef Studio - Check translations quality and ask for review
- Coordinate with team - Ensure reviewers know about pending changes
Integration Examples
NPM Scripts
GitHub Actions
Next Steps
After pushing changes:Review in Studio
Review and approve translations in Gleef Studio
Pull Updates
Sync approved translations back to your project