Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Ruby
  3. i18n-tasks

i18n-tasks

MITRubyv1.1.2

A Ruby gem that manages translation and localization with static analysis to find missing and unused i18n keys.

Visit WebsiteGitHubGitHub
2.2k stars285 forks0 contributors

What is i18n-tasks?

i18n-tasks is a Ruby gem that provides static analysis for internationalization (i18n) in Ruby applications. It scans your codebase to detect missing translation keys and identify unused keys in locale files, helping maintain clean and complete translations. The tool also offers automation for adding missing keys, removing unused ones, and integrating with translation services like Google Translate and DeepL.

Target Audience

Ruby and Rails developers working on internationalized applications who need to manage translation keys efficiently. It's particularly useful for teams maintaining large codebases with multiple locales.

Value Proposition

Developers choose i18n-tasks because it automates the tedious process of managing translation keys, catching issues before runtime and reducing overhead from unused translations. Its static analysis approach is more reliable than runtime checks, and its extensive feature set covers everything from detection to automated fixes.

Overview

Manage translation and localization with static analysis, for Ruby i18n

Use Cases

Best For

  • Finding missing translation keys in Ruby on Rails applications
  • Cleaning up unused i18n keys to reduce locale file bloat
  • Automating translation key management in large codebases
  • Integrating machine translation services into the i18n workflow
  • Normalizing and organizing YAML locale files
  • Managing translations across multiple locale files and gems

Not Ideal For

  • Projects relying heavily on runtime-generated translation keys without using i18n-tasks-use hints
  • Applications using I18n.localize extensively, as this method is unsupported
  • Non-Ruby projects or those not using the Ruby i18n gem (e.g., JavaScript frameworks)
  • Teams needing a GUI or visual interface for translation management, since it's CLI-only

Pros & Cons

Pros

Static Analysis Power

Uses AST and regexp scanners to statically analyze code for translation key usage, catching missing and unused keys before runtime, which prevents errors in production.

Automated Key Management

Can automatically add missing keys with placeholders, remove unused keys, and normalize locale files, reducing manual overhead in large codebases.

Translation Service Integration

Supports multiple backends like Google Translate, DeepL, OpenAI, Yandex, and watsonx, allowing seamless machine translation of missing keys.

Flexible Configuration

Offers configurable scanners, routers for organizing locale files, and support for custom adapters, adapting to various project structures.

Cons

Dynamic Key Limitations

Dynamic keys like `t 'cats.#{cat}.name'` are not recognized by default, requiring hints or enabling non-strict mode, which can lead to false positives or missed keys.

Unsupported i18n Features

Does not support I18n.localize and has limited support for some keyword arguments (e.g., scope in regexp scanner), creating gaps for certain use cases.

YAML Formatting Inconsistencies

Relies on Psych for YAML processing, which can cause unexpected changes in multi-line string formatting during normalization, as noted in the README.

Frequently Asked Questions

Quick Stats

Stars2,160
Forks285
Contributors0
Open Issues50
Last commit9 days ago
CreatedSince 2013

Tags

#developer-tools#rails#yaml#static-code-analysis#cli-tool#i18n#translation-management#localization#ruby#static-analysis

Built With

Y
YAML
R
Ruby
P
Prism

Links & Resources

Website

Included in

Ruby14.1k
Auto-fetched 1 day ago

Related Projects

rails-i18nrails-i18n

Repository for collecting Locale data for Ruby on Rails I18n as well as other interesting, Rails related I18n stuff

Stars4,030
Forks2,704
Last commit10 days ago
globalizeglobalize

Rails I18n de-facto standard library for ActiveRecord model/data translation.

Stars2,157
Forks500
Last commit15 days ago
i18ni18n

Internationalization (i18n) library for Ruby

Stars1,028
Forks416
Last commit4 months ago
twitter-cldr-rbtwitter-cldr-rb

Ruby implementation of the ICU (International Components for Unicode) that uses the Common Locale Data Repository to format dates, plurals, and more.

Stars691
Forks100
Last commit5 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub