Assistance
Guides, answers, and ways to reach us.
Getting Started
Step-by-step guides to make the most of Localizee.
Open Your First Project
Get your Xcode project into Localizee in seconds.
Open Localizee and click "Open Project" or press Cmd+O
Select your Xcode project folder (.xcodeproj or folder containing .xcstrings)
Localizee discovers your string catalog and imports existing languages automatically
Your project is ready — start translating
AI Translation Workflow
Let AI handle the heavy lifting, then refine with full control.
Click the translate button on any language card — or use Cmd+T for batch
Review the Dry Run preview: string count, estimated cost, and duration
Click "Translate" — AI processes each string with domain context and glossary
Review quality indicators, resolve ambiguities, edit inline if needed, and save with Cmd+S
Use Your Own API Key
Connect your own AI provider account for unlimited, direct access.
Open Settings with Cmd+,
Select your provider and choose "Use My Key (BYOK)"
Paste your API key — it's stored securely in your Mac's Keychain
Translate directly through your account with no middleman
Command-Line Translation
Automate localization from your terminal or CI pipeline.
Run "localizee status App.xcstrings" to see translation coverage
Run "localizee translate App.xcstrings --lang fr,de --dry-run" to preview
Run without --dry-run to translate missing strings
Commit the updated .xcstrings file to your repository
Frequently Asked Questions
AI translations are context-aware and adapt to your app's domain and tone. Localizee builds a glossary from your existing translations to keep terminology consistent. That said, we always recommend reviewing translations before shipping — Localizee's quality checks, confidence scores, and ambiguity detection are designed to make that review fast and focused.
Localizee is a native macOS app. Your project files stay on your Mac. API keys are stored in your system Keychain — never in plain text. When you translate, your strings are sent to the AI provider you selected (directly or through our proxy) and are not stored or used for training. We collect no analytics, no accounts, and no telemetry.
Yes. Localizee includes a command-line tool (localizee-cli) that supports status checks, batch translation, language management, and dry-run previews. It works with any CI system — just install, configure your API key, and run.
Localizee supports over 30 languages including right-to-left languages like Arabic and Hebrew. You can add any language that your Xcode project supports.
Yes. The free tier lets you edit .xcstrings files, manage up to 3 languages, and use 10 AI translations per day with your own API key. Quality issues and ambiguities are detected and shown — resolution requires Pro. Upgrade when you're ready to go global.
Localizee works with Xcode String Catalogs (.xcstrings) — Apple's modern localization format introduced in Xcode 15. It reads and writes .xcstrings files directly with no conversion step. If your project still uses .strings or .stringsdict files, migrate them to .xcstrings in Xcode first.
Yes. Localizee supports multiple AI providers. You can switch between them at any time — even mid-session. Pro subscribers can use included AI with no API key setup, or bring their own key for direct access.
Command Line Tool
Automate localization from Terminal, scripts, or CI pipelines.
Installation
Download and install the CLI in one step.
Installcurl -L https://localizee.app/downloads/localizee-cli-latest.zip -o /tmp/localizee-cli.zip
unzip -o /tmp/localizee-cli.zip -d /tmp/localizee-cli-install
sudo mkdir -p /usr/local/bin
sudo mv /tmp/localizee-cli-install/localizee-cli /usr/local/bin/localizee
rm -rf /tmp/localizee-cli.zip /tmp/localizee-cli-installlocalizee --helpSame as install — just run it again.
Uninstallsudo rm -f /usr/local/bin/localizeelocalizee status <file.xcstrings>
Check translation coverage for all languages in the catalog.
Example OutputLanguage Translated Missing Complete
─────────────────────────────────────────────
en (base) 142 0 100%
fr 138 4 97%
de 130 12 92%
ja 120 22 85%
ar 98 44 69%
he 95 47 67%localizee translate <file> --lang <codes> [options]
Translate missing strings for one or more languages.
Flags| --lang fr,de,ja | Comma-separated language codes (required) |
| --dry-run | Preview without translating |
| --provider claude | AI provider (claude, openai, proxy) |
| --model <name> | Model override |
| --key <api-key> | API key (or set LOCALIZEE_API_KEY env var) |
Dry Run — App.xcstrings
──────────────────────────────────────────────
Language Missing Est. Tokens Est. Cost Est. Duration
fr 4 820 $0.01 ~3s
de 12 2,460 $0.04 ~8s
──────────────────────────────────────────────
Total 16 3,280 $0.05 ~11s
No changes written. Remove --dry-run to translate.# Basic translate
localizee translate App.xcstrings --lang fr,de
# With specific provider and model
localizee translate App.xcstrings --lang ja --provider openai --model gpt-4o
# Inline key for CI — no Keychain needed
localizee translate App.xcstrings --lang fr,de,ja --key $LOCALIZEE_API_KEYlocalizee languages <file.xcstrings>
List all languages in the catalog.
Example Outputen (base), fr, de, ja, ar, heCI & Automation
Integrate Localizee into your build pipeline.
GitHub Actions
Translate on every push and commit the results.
name: Localize
on: [push]
jobs:
translate:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install CLI
run: |
curl -L https://localizee.app/downloads/localizee-cli-latest.zip -o /tmp/localizee-cli.zip
unzip -o /tmp/localizee-cli.zip -d /tmp/localizee-cli-install
sudo mkdir -p /usr/local/bin
sudo mv /tmp/localizee-cli-install/localizee-cli /usr/local/bin/localizee
rm -rf /tmp/localizee-cli.zip /tmp/localizee-cli-install
- name: Translate
env:
LOCALIZEE_API_KEY: ${{ secrets.LOCALIZEE_API_KEY }}
run: |
localizee translate App.xcstrings \
--lang fr,de,ja
- name: Commit
run: |
git config user.name "github-actions"
git config user.email "actions@github.com"
git add App.xcstrings
git diff --cached --quiet || \
git commit -m "Update translations"
git pushShell Script
A reusable script for multi-language translation.
#!/bin/bash
set -e
FILE="App.xcstrings"
LANGS="fr,de,ja,ar,he"
echo "=== Current status ==="
localizee status "$FILE"
echo ""
echo "=== Dry run ==="
localizee translate "$FILE" \
--lang "$LANGS" --dry-run
echo ""
echo "=== Translating ==="
localizee translate "$FILE" \
--lang "$LANGS"
echo ""
echo "=== Updated status ==="
localizee status "$FILE"Hooks, Env Vars & Exit Codes
Pre-commit hook, configuration, and error handling.
Pre-commit Hook#!/bin/bash
# .git/hooks/pre-commit
localizee status App.xcstrings | \
grep -q "100%" || {
echo "Translations incomplete."
exit 1
}| LOCALIZEE_API_KEY | API key for translation |
| LOCALIZEE_PROVIDER | Default AI provider |
| LOCALIZEE_MODEL | Default model override |
| 0 | Success |
| 1 | General error |
| 2 | API error |
| 3 | Validation error |
Accessibility
Localizee is designed to be usable by everyone.
VoiceOver
Every button, card, progress bar, and status indicator has descriptive labels. Navigate the entire app without seeing the screen.
Voice Control
All interactive elements are labeled and reachable by voice. Use commands like 'click Translate' or 'tap Save' to work hands-free.
Dark Mode
Full dark interface support. Every color adapts automatically — designed for comfortable use in low-light environments.
No Color Dependence
Status indicators pair icons with color — never color alone. Progress bars include percentage text. Usable with any form of color vision.
Sufficient Contrast
Text and icons meet contrast guidelines against all backgrounds in both light and dark modes.
Reduce Motion
All animations respect the system Reduce Motion setting. Pulse effects, transitions, and hover animations are disabled when preferred.
Get in Touch
We're here to help.
Contact Us
Whether you have a question, feedback, or need help with Localizee — reach out and we'll get back to you.