Incremental Translation
Only translate new or changed keys, saving time and API costs.
How It Works
When enabled, Shipi18n compares your current source file with the previously synced version and only translates keys that have changed.
- New keys: Translated immediately
- Modified keys: Re-translated with updated content
- Unchanged keys: Skipped (existing translations preserved)
- Deleted keys: Removed from target files
Enable in GitHub Action
- name: Translate incrementally
uses: Shipi18n/shipi18n-github-action@v1
with:
api-key: ${{ secrets.ANTHROPIC_API_KEY }}
source-dir: locales/en
target-languages: es,fr,de
incremental: 'true' # Default is trueCLI Usage
shipi18n translate locales/en --target es,fr,de --incremental
Benefits
- Cost savings: Only pay for changed content
- Faster syncs: Skip unchanged translations
- Preserve edits: Manual corrections to translations are kept
- Git-friendly: Smaller diffs in PRs
When to Disable
Set incremental: false if you want to re-translate everything, for example after fixing a translation bug or changing glossary settings.