### Total Locales

--

### Translated Keys

--

### Missing Translations

--

## Translation Progress by Locale

## Quick Actions

### AI Translation

Translate with Claude Code

### Orphaned Translations

Find keys used in TSX but missing in messages

### JSX Cleanup

Remove unnecessary JSX wrappers

## Recent Translation Activity

## Locale Configuration

⚠️ Important:

Maximum 12 locales can be enabled at once. Enabling too many locales may cause 502 errors.

Currently enabled: 0 / 12

Default Language:
✅ SAFE: Updates .env file with selected locales. Changes NEXT_PUBLIC_LANGUAGES. Requires app restart to take effect.
✅ SAFE: Adds missing keys from English to all locales. Never deletes existing translations. Only adds missing keys with English values as placeholders.
✅ READ-ONLY: Scans for problematic key names (spaces, special chars, uppercase starts). Does NOT modify any files. Check console for detailed report.
⚠️ MODIFIES: Fixes formatting issues: trims spaces, converts smart quotes to regular, removes invisible Unicode. Review changes in git after running.
🔍 IDENTIFIES: Finds keys with values that are just numbers (0, 1, 2), punctuation (), [, }), or other non-translatable content. Can remove them from all locales.

| Enabled | Code | Language | Keys | Missing | Identical | Translated | Progress | Default | Actions
--- | --- | --- | --- | --- | --- | --- | --- | --- | --- | ---

## Translation Editor

Manage and translate your application content with AI assistance

0
Total
0
Done
0
Same
0
Missing
Translation Progress 0%

### Locale

### Filter

### Quick Actions

Auto-save after AI translation

### Translation Keys

0 / 0 keys

### Edit Translation

Key Path
English (Source)
Translation

### No Key Selected

Select a translation key from the list to start editing

## AI Translation with Claude Code

### 📚 How This Works:

- • Batch Processing: Translations are sent to Claude in batches (10-50 keys) to minimize API calls
- • Smart Grouping: Related keys are grouped together for better context
- • Review Required: All translations are shown for review before saving
- • Context Preserved: Placeholders like {name}, %s, %d are maintained
- • Batch Processing: One API call translates multiple keys at once

Note: Claude must be installed and available. Each batch takes 2-5 seconds to process.

### Translation Settings

Target Locales
Select All Locales

Select multiple locales to translate them all at once

Translation Mode

Missing = keys not in file. Identical = same as English. Both = combines missing and identical.

Context Priority

High = user-facing, Medium = settings, Low = technical

Batch Size

### Live Translation Progress

Configure settings and click "Start AI Translation" to begin

Overall Progress 0%
0 / 0 keys Time: 0s
Current Batch
Batch 0/0 • Locale: --
0
Translated
0
Unchanged
0
Errors
Live Translation Feed
Speed: -- keys/sec

### Locale Overview

### Active Translations

## Translation Tools

Scans your codebase to find translation keys that are used in the code but missing from translation files. Also identifies orphaned keys that exist in translation files but are not used anywhere in the code.

Scans all translation files to find duplicate values across different keys. This helps identify redundant translations that could be consolidated to improve consistency.

### Tool Results

## Untranslatable Text Scanner

Find and clean texts that should not be translated

### Pattern Configuration

Select All
0
Total Found
0
Pattern Types
0
Files Affected
0
Selected

Scanning for untranslatable texts...

### No Scan Results Yet

Click "Scan for Untranslatable" to find texts that should not be translated.

## Orphaned Translations Scanner

Find keys used in TSX files but missing from message files
Select All
0
TSX Files Scanned
0
Message Keys
0
Orphaned Keys
0
Selected

Scanning TSX files for orphaned translations...

### No Scan Results Yet

Click "Scan for Orphaned Keys" to find translation keys used in TSX files but missing from message files.

| Namespace | Key | Suggested Value | Files
--- | --- | --- | --- | ---

## JSX Expression Cleanup

Remove unnecessary JSX expression wrappers like {'text'} → text
Select All
0
Files Scanned
0
Wrapped Strings Found
0
Unique Values
0
Selected

Scanning TSX/JSX files for unnecessary expression wrappers...

### No Scan Results Yet

Click "Scan for Wrapped Strings" to find JSX expressions like {'text'} that can be simplified.

| Value | Current | Replacement | Files | Count
--- | --- | --- | --- | --- | ---

Processing...