Claude-skill-registry iOS Localization & Assets
Standards for String Catalogs, L10n, and Asset Management.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/localization" ~/.claude/skills/majiayu000-claude-skill-registry-ios-localization-assets && rm -rf "$T"
manifest:
skills/data/localization/SKILL.mdsource content
iOS Localization & Assets Standards
Priority: P1
Implementation Guidelines
Localization (L10n)
- String Catalogs (.stringcatalog): Use for primary localization in Xcode 15+. It provides a visual editor and compile-time checks for missing translations.
- Native Implementation: Use
orString(localized: "key")
. Avoid manualLocalizedStringResource
where possible.NSLocalizedString - Pluralization: Use String Catalogs' built-in pluralization support instead of complex code logic.
- Formatting: Use
API for dates, numbers, and currencies to respect the user's locale.Formatted
Asset Management
- Asset Catalogs (.xcassets): Keep assets organized. Use folders with "Provides Namespace" enabled for large projects.
- SF Symbols: Use for standard icons to ensure consistency and accessibility.
- Vector Assets: Use PDF or SVG and enable "Preserve Vector Data" for resolution independence.
Best Practices
- Hardcoded Strings: Never use hardcoded strings in UI. Every user-facing string must be localized.
- Base Bundle: Ensure
localization is complete before adding other languages.Base
Anti-Patterns
- Manual String Formatting:
**No manual currency symbol concat**: Use NumberFormatter or .formatted(.currency). - Loose Asset Files:
**No loose png/jpg files in repo**: Always use Asset Catalogs. - Untranslated Keys:
**No placeholder strings**: Ensure 100% coverage in String Catalogs.