awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ruby-i18n avatar

ruby-i18n/i18n

0
View on GitHub↗
1,028 stars·416 forks·Ruby·MIT·3 views

I18n

This library provides a foundational framework for internationalizing Ruby applications by decoupling text from source code. It manages the complete translation lifecycle, including dynamic content interpolation, pluralization, and locale-specific formatting. The system ensures application stability through thread-safe state management and configurable error handling for missing translation keys.

The project distinguishes itself through a highly modular architecture that supports pluggable storage backends, allowing translation data to be retrieved from databases, key-value stores, or standard file formats. It includes sophisticated logic for hierarchical fallback resolution, ensuring that content remains available even when specific translations are missing. Furthermore, the library facilitates locale-aware routing and request interception, enabling applications to maintain consistent language context across user sessions.

Beyond core translation primitives, the library offers tools for automating localization workflows, such as extracting hardcoded strings and scaffolding new projects. It also provides mechanisms for parsing region-specific user inputs, such as dates and numbers, into standardized formats. The framework supports text transliteration and integrates with standard file formats to streamline the management of multi-language content.

Features

  • Ruby Frameworks - Provides a foundational framework for managing translations, pluralization, and locale-specific formatting in Ruby applications.
  • Locale Fallback Resolution - Traverses a priority list of locales to resolve missing translation keys.
  • Pluralization and Interpolation Engines - Processes translation strings at runtime to inject variables, handle pluralization rules, and apply locale-specific formatting.
  • Internationalized Content Renderers - Translates application content into multiple languages with support for dynamic interpolation and regional formatting.
  • Multi-Language Content Delivery - Intercepts request paths to serve locale-specific content and maintain language context.
  • Content Translation - Maps translation keys to localized strings with support for dynamic interpolation and pluralization rules.
  • Localization Frameworks - Handles multi-language support including locale fallbacks, transliteration, and regional input parsing.
  • Translation Management - Decouples application text from source code to support dynamic interpolation and external storage.
  • Locale-Aware Date and Number Formatting - Parses region-specific numbers, dates, and times from user input into standardized formats.
  • Translation Data Stores - Manages the storage and retrieval of translation strings from diverse sources like databases and key-value stores.
  • Pluggable Storage Backends - Supports interchangeable storage adapters for translation data, including databases and file systems.
  • Gettext Implementations - Supports standard gettext file formats for mapping source strings to localized text without requiring manual key aliases.
  • Thread-Local State Management - Isolates locale and configuration state within thread-safe containers for concurrent request processing.
  • Translation Backend Plugin Systems - Provides a pluggable architecture to retrieve translation data from databases, key-value stores, or remote backends.
  • Request Interception Middleware - Intercepts incoming web requests to detect and set the user language context.
  • Key Extraction - Identifies and extracts hardcoded strings from source code into centralized translation keys.
  • Translation Workflows - Coordinates collaborative editing and synchronization of translation strings across teams.
  • User Input Processing - Interprets region-specific user input for dates and numbers to ensure accurate data processing.
  • Application Locale Management - Manages the active language context within the application request lifecycle to ensure consistent content display.
  • Automated Translation Workflows - Automates the extraction, synchronization, and fallback logic for translation keys.
  • Locale-Aware Routing Middleware - Intercepts incoming requests to support locale-specific URL structures and language-based routing.

Star history

Star history chart for ruby-i18n/i18nStar history chart for ruby-i18n/i18n

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Curated searches featuring I18n

Hand-picked collections where I18n appears.
  • Internationalization and Localization Libraries

Open-source alternatives to I18n

Similar open-source projects, ranked by how many features they share with I18n.
  • ngx-translate/corengx-translate avatar

    ngx-translate/core

    4,666View on GitHub↗

    This is an internationalization framework for Angular applications. It provides a system for managing multilingual text by mapping keys to translated strings, utilizing a JSON translation manager to load and merge localized assets via HTTP or local sources. The library includes a runtime language switcher to update the user interface instantly without reloading the page and a key extractor to identify translatable strings within source code. The project features an ICU message formatter to handle complex linguistic requirements such as pluralization and gender. It distinguishes itself through

    TypeScript
    View on GitHub↗4,666
  • lokalise/i18n-allylokalise avatar

    lokalise/i18n-ally

    4,874View on GitHub↗

    i18n-ally is a VS Code extension and internationalization management tool designed to handle translation workflows directly within the code editor. It provides a system for extracting hardcoded strings, managing translation keys, and detecting missing locale values across a codebase. The tool distinguishes itself by providing an inline translation viewer that displays values and metadata next to keys in the source code. It also includes a machine translation integrator to automatically populate empty locale files with initial candidates and a locale file parser that supports multiple formats,

    TypeScriptangulari10ni18n
    View on GitHub↗4,874
  • amannn/next-intlamannn avatar

    amannn/next-intl

    4,304View on GitHub↗

    next-intl is an internationalization framework for Next.js applications. It provides a system for managing translations, localized routing, and ICU message formatting to deliver multilingual content across server and client components. The project distinguishes itself through a focus on developer experience and type safety, utilizing a TypeScript translation validator that generates declaration files from JSON messages for compile-time key validation. It streamlines translation workflows with tools for automatically extracting strings from source code into message files and synchronizing thos

    TypeScriptdate-formattingi18nnext
    View on GitHub↗4,304
  • kazupon/vue-i18nkazupon avatar

    kazupon/vue-i18n

    7,230View on GitHub↗

    vue-i18n is an internationalization framework and plugin for Vue.js applications. It serves as a dynamic translation manager and localization formatting library used to translate user interface text and format dates and numbers for global audiences. The project distinguishes itself through a dynamic translation workflow that supports asynchronous locale loading and the ability to reload translation messages in real-time without refreshing the page. It provides specialized mechanisms for rich text rendering, allowing the interpolation of HTML tags and Vue components directly into translated st

    JavaScripti18ninternationalizationinternationalization-plugin
    View on GitHub↗7,230
See all 30 alternatives to I18n→

Frequently asked questions

What does ruby-i18n/i18n do?

This library provides a foundational framework for internationalizing Ruby applications by decoupling text from source code. It manages the complete translation lifecycle, including dynamic content interpolation, pluralization, and locale-specific formatting. The system ensures application stability through thread-safe state management and configurable error handling for missing translation keys.

What are the main features of ruby-i18n/i18n?

The main features of ruby-i18n/i18n are: Ruby Frameworks, Locale Fallback Resolution, Pluralization and Interpolation Engines, Internationalized Content Renderers, Multi-Language Content Delivery, Content Translation, Localization Frameworks, Translation Management.

What are some open-source alternatives to ruby-i18n/i18n?

Open-source alternatives to ruby-i18n/i18n include: ngx-translate/core — This is an internationalization framework for Angular applications. It provides a system for managing multilingual… lokalise/i18n-ally — i18n-ally is a VS Code extension and internationalization management tool designed to handle translation workflows… kazupon/vue-i18n — vue-i18n is an internationalization framework and plugin for Vue.js applications. It serves as a dynamic translation… amannn/next-intl — next-intl is an internationalization framework for Next.js applications. It provides a system for managing… wagtail/wagtail — Wagtail is an open-source content management system built on the Django web framework. It provides a structured,… vendurehq/vendure — Vendure is a Node.js e-commerce engine and headless commerce framework built with NestJS and TypeScript. It serves as…