auto-i18n

Implement ICU/Fluent pluralization and locale-aware formatting for multilingual applications.

6|Updated Mar 31, 2026
One-click install
npx skills add https://github.com/Corvalis-LLC/Crow-Stack --skill auto-i18n-corvalis-llc
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: auto-i18n
Source: https://github.com/Corvalis-LLC/Crow-Stack/tree/main/skills/auto-i18n
Command: npx skills add https://github.com/Corvalis-LLC/Crow-Stack --skill auto-i18n-corvalis-llc

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Global product teams struggle to deliver correct translations across languages with varying plural rules, formatting conventions, and bidirectional text. This Skill provides a structured approach to implement robust i18n patterns across codebases, reducing bug risk and maintenance cost.

Core Features & Use Cases

  • ICU/Fluent pluralization using proper selectors instead of manual conditionals.
  • Locale-aware formatting for numbers, dates, currencies, and RTL support.
  • Named placeholders to enable flexible sentence structure across locales.
  • Structured translation keys and centralized locales to prevent collisions.
  • Locale negotiation and fallback chains to gracefully handle missing translations.

Quick Start

Implement ICU/Fluent pluralization, use Intl APIs for locale-aware formatting, and organize translation keys for multi-locale projects.

Frequently Asked Questions about auto-i18n

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle pluralization in i18n translation files without manual conditionals?

To handle pluralization in i18n, use ICU/Fluent plural rules with proper selectors instead of manual conditionals. This ensures correct plural forms across various locales, reducing bug risk and maintenance cost for multilingual UIs.

What is the best way to format dates and currencies for multiple locales?

Locale-aware formatting for dates, numbers, and currencies is best implemented using standard Intl APIs. This approach automatically applies locale-specific formatting conventions, ensuring accurate multilingual UI rendering across your application.

How do I organize translation keys to prevent collisions in a multi-locale project?

Organize translation keys by using structured keys and centralized locales. This prevents collisions and simplifies maintenance in multi-locale projects by enforcing a consistent, hierarchical structure for all translation strings.

How does locale fallback negotiation work when a translation is missing?

Locale fallback chains negotiate missing translations by cascading to alternative locales. This gracefully handles missing strings by systematically checking fallback locales until a suitable translation is found, preventing UI breakage.

Can I use named placeholders to change sentence structure across different locales?

Named placeholders enable flexible sentence structure across locales. They allow translators to reorder variables dynamically within sentences, ensuring grammatically correct translations without altering the underlying application code.

How do I implement RTL support for bidirectional text in internationalization?

RTL support for bidirectional text is implemented by applying locale-aware formatting and directionality rules. This ensures proper visual rendering of right-to-left languages, addressing the complexities of multilingual UI layouts.