i18n Consistency Check & Cleanup
Comprehensive i18n analysis tool for the Tetris project supporting 2 languages (Japanese, English).
Quick Check
bash
bun run check:i18n
Detection Capabilities
🔴 Missing Keys (Critical)
- •Keys used in code but not present in translation files
- •Priority: Critical (causes runtime errors)
- •Impact: Displays raw translation keys to users
- •Action: Add missing keys to all translation files immediately
📝 Hardcoded Strings (i18n Compliance)
- •User-facing strings not using
t()function - •Examples: "AI Replay", "Start AI", "Loading..."
- •Scope: Production code only (test files excluded)
- •Action: Convert to translation keys for proper localization
🔄 Dynamic Key Patterns (Analysis Required)
- •Template literal patterns like
t(\game.${type}`)` - •Analysis: Validates all possible key combinations exist
- •Action: Verify all generated keys are defined
⚠️ Unused Keys (Optimization)
- •Keys present in translation files but not used in code
- •Priority: Medium (cleanup opportunity)
- •Action: Remove unnecessary keys to optimize file size
Workflow
- •Execute Check: Run
bun run check:i18n - •Identify Issues: List Missing/Unused keys
- •Propose Fixes: Present specific correction methods
- •Confirm Execution: Ask user to approve modifications
- •Apply Fixes: Update translation files after approval
- •Verify: Re-run check after modifications
Translation Files
- •
src/assets/locales/ja.json- Japanese translations (default) - •
src/assets/locales/en.json- English translations
Safety Measures
- •Re-verify usage before key deletion
- •Execute consistent operations across all language files
- •Validate JSON syntax after modifications
- •Confirm no issues with tests and build
When This Skill Activates
- •"Check translations"
- •"i18n consistency check"
- •"Are all translation keys defined?"
- •"Find hardcoded strings"
- •"Translation cleanup"
- •"Localization issues"
- •"Missing translation keys"