KS
Killer-Skills

localize — how to use localize how to use localize, localize setup guide, localize vs internationalization, localize install, what is localize, localize alternative, localization best practices, translation.json format, extract-strings.ts command

v1.0.0
GitHub

About this Skill

Perfect for Internationalization Agents needing advanced translation management capabilities. Localize is a process of adapting software for different languages and regions, involving extraction, translation, and validation of content

Features

Extracts hardcoded strings using bun run scripts/extract-strings.ts
Replaces strings with t() calls in source files
Supports English translations via en/translation.json
Syncs translations across languages
Validates translation coverage

# Core Topics

ryokun6 ryokun6
[0]
[0]
Updated: 3/6/2026

Quality Score

Top 5%
36
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add ryokun6/ryos/localize

Agent Capability Analysis

The localize MCP Server by ryokun6 is an open-source Categories.community integration for Claude and other AI agents, enabling seamless task automation and capability expansion. Optimized for how to use localize, localize setup guide, localize vs internationalization.

Ideal Agent Persona

Perfect for Internationalization Agents needing advanced translation management capabilities.

Core Value

Empowers agents to extract hardcoded strings, replace them with t() calls, and manage translations across languages using JSON files like en/translation.json, enabling seamless internationalization of applications.

Capabilities Granted for localize MCP Server

Extracting hardcoded strings for translation
Replacing strings with t() calls in source files
Syncing translations across multiple languages
Validating translation coverage

! Prerequisites & Limits

  • Requires execution of scripts like extract-strings.ts
  • Dependent on specific file patterns and structures
Project
SKILL.md
2.4 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

Localize App or Component

Workflow Checklist

- [ ] 1. Extract hardcoded strings
- [ ] 2. Replace with t() calls in source files
- [ ] 3. Add English translations to en/translation.json
- [ ] 4. Sync translations across languages
- [ ] 5. Machine translate [TODO] keys
- [ ] 6. Validate coverage

Step 1: Extract Hardcoded Strings

bash
1bun run scripts/extract-strings.ts --pattern [PATTERN]

Step 2: Replace Strings with t() Calls

For each component:

  1. Add import: import { useTranslation } from "react-i18next";
  2. Add hook: const { t } = useTranslation();
  3. Replace strings: t("apps.[appName].category.key")
  4. Add t to dependency arrays for useMemo/useCallback

Key Structure

apps.[appName].menu.*        # Menu labels
apps.[appName].dialogs.*     # Dialog titles/descriptions
apps.[appName].status.*      # Status messages
apps.[appName].ariaLabels.*  # Accessibility labels
apps.[appName].help.*        # Help items (auto-translated)

Common Patterns

tsx
1// Basic 2t("apps.ipod.menu.file") 3 4// With variables 5t("apps.ipod.status.trackCount", { count: 5 }) 6 7// Conditional 8isPlaying ? t("pause") : t("play") 9 10// With symbol prefix 11`✓ ${t("apps.ipod.menu.shuffle")}`

Step 3: Add English Translations

Add to src/lib/locales/en/translation.json:

json
1{ 2 "apps": { 3 "ipod": { 4 "menu": { "file": "File", "addSong": "Add Song..." }, 5 "dialogs": { "clearLibraryTitle": "Clear Library" }, 6 "status": { "shuffleOn": "Shuffle ON" } 7 } 8 } 9}

Step 4: Sync Across Languages

bash
1bun run scripts/sync-translations.ts --mark-untranslated

Adds missing keys to all language files, marked with [TODO].

Step 5: Machine Translate

bash
1bun run scripts/machine-translate.ts

Requires GOOGLE_GENERATIVE_AI_API_KEY env variable.

Step 6: Validate

bash
1bun run scripts/find-untranslated-strings.ts

Component Guidelines

ComponentWhat to translate
Menu barsAll labels, items, submenus
DialogsTitles, descriptions, button labels
StatusshowStatus() calls, toasts
Help itemsAuto-translated via useTranslatedHelpItems

Notes

  • Emoji/symbols (♪, ✓) can stay hardcoded
  • Help items use pattern: apps.[appName].help.[key].title/description
  • Include t in dependency arrays when used in useMemo/useCallback

Related Skills

Looking for an alternative to localize or building a Categories.community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication