awesome-i18n
by oh-jon-paul
π A curated list of i18n resources for all kind of languages and frameworks
AI summary
i18n tools
A curated collection of internationalization tools and resources for developers
- stars
- 337
- forks
- 27
- watching
- 10
- awesome lists
- 2
- entries
- 97
What's in the list
97 links in 16 sections, with live GitHub stats.activeno commit in 2y
π¦ Libraries / JavaScript / TypeScript
- airbnb.io/polyglot.js
tiny i18n helper library written in JavaScript, made to work both in the browser and in CommonJS environments
- VoerkaI18n
Internationalization solution for
eo-locale
elegant lightweight library based on Internationalization API
- MDN: Intl object
documentation for standard object from JavaScript
- MDN: i18n
internationalize your browser extension. APIs to get localized strings from locale files
facebook/fbt
internationalization framework for JavaScript designed to be not just powerful and flexible, but also simple and intuitive
- FormatJS
internationalize your web apps on the client & server
- FormatJS CLI
extract messages from project with FormatJS library
- i18next
internationalization framework for browser or any other JavaScript environment
i18n-ally
extension for VSCode, all in one about i18n
intljulep
super lightweight yet powerful i18n library
jquery/globalize
library for i18n that leverages the official Unicode CLDR JSON data
Jed
Gettext style i18n library
- lisan.js
fast and small i18n library
js-lingui
readable, automated, and optimized internationalization
- npm i18n
lightweight simple translation module with dynamic JSON storage
- ttag
library for translations based on ES6 template literals
typesafe-i18n
type-safe, lightweight localization library for TypeScript with no external dependencies
schummar-translate
TypeScript powered translation library for React and Node.js
messageformat
ICU MessageFormat for Javascript - i18n Plural and Gender Capable Messages
rosetta
A general purpose internationalization library in ~300 bytes (including dependencies)
Intl.js (UNMAINTAINED)
implementation of the ECMAScript Internationalization API
- ParaglideJS
synchronous, typesafe and lightweight i18n library
π¦ Libraries / React / React Native
next-translate
easy i18n for NextJS, ~1kb of size
next-intl
a minimal, but complete solution for internationalization in Next.js apps works with SSR and SSG
react-translate
internationalization for React
react-native-localize
toolbox for your React Native app localization
react-localization
simple module to localize the React interface using the same syntax used in the ReactNativeLocalization module
- react-intl
internationalize your web apps with react-intl library
- react-intl (CLI)
extract messages from project with FormatJS library
- react-intl-hooks
small and fast library that you can use to replace FormatJS components
react-i18nify
simple i18n translation and localization components and helpers for React
- react-i18next
internationalization framework for React and React Native which is based on i18next
react-i18n-mini
A tiny (~2.39 kB) internationalisation library for React
react-persian
set of react components for Persian localization
react-translated
dead simple way to add complex translations
react-localize-redux
localization library for handling translations
react-translate-component
component for React that utilizes the Counterpart module and the Interpolate component to provide multi-lingual/localized text content
react-littera
lightweight library for robust translations using hooks. Some of the key features are dynamic templates, missing reports, auto-locale detection and more
talkr
lightest i18n provider for React applications (< 1kb). Supports Typescript, provides smart autocompletion based on your own json translation files, handles complex plural rules, 0 dependencies
π¦ Libraries / VueJS
- vue i18n
vue i18n is internationalization plugin for Vue.js
sweet-i18n
automatic extraction and conversion of Chinese characters in Vue and JS files based on Babel
π¦ Libraries / Angular
- NGX Translate
translation library for Angular
π¦ Libraries / Svelte
svelte-i18n
internationalization for Svelte
π¦ Libraries / Quasar.dev
- Quasar i18n
official Quasar framework document page about internationalization
π¦ Libraries / Java
- Thymeleaf
modern server-side Java template engine for both web and standalone environments
- Thymeleaf i18n docs
How to use for translations
- Spring Messages
Spring Boot internationalization. LocaleResolver & LocaleChangeInterceptor example usage
- Spring Boot localization
Baeldun post about using Spring Messages
- i18n in Spring Boot
Stackoverflow thread about i18n in Spring Boot
- Java Time Classes
Stackoverflow thread about time and timezones in Java
π¦ Libraries / Jekyll
jekyll-multiple-languages-plugin
Jekyll Multiple Languages is an internationalization plugin for Jekyll
jekyll-i18n
Jekyll i18n is a plugin that enables simplistic multi-language site designs using Jekyll. (not maintained)
π¦ Libraries / Swift (iOS & macOS)
SwiftGoogleTranslate
framework to use cloud translation API by Google in Swift
π¦ Libraries / Ruby
Twitter/CLDR
implementation of the ICU that uses the Common Locale Data Repository to format dates, plurals
- Ruby i18n
official internationalization API document page
π¦ Libraries / Python
- Python-i18n
internationalization package
deep-translator
library to translate between different languages in a simple way using multiple translators
π¦ Message and key extraction
- FormatJS CLI
extract messages from project with FormatJS library
- simplelocalize-cli
extract translation keys and messages from various different libraries
IntelliJ plugin for extracting i18n keys
IntelliJ IDEA plugin for extracing i18n keys
π₯ Desktop apps for translation management
Argos Translate
open source offline translation app based on OpenNMT
- GNU gettext
tool for adding native language support to applications
RTranslator
simultaneous translator app for Android based on Google's API
Crow Translate
lightweight desktop translator, uses Google, Yandex and Bing translate API
Copy Translator
cross-platform app that automatically translate texts when copied in the clipboard
- ElectronJS i18n
cross-platform i18n manager
- OmegaT
free translation memory application that works on all popular operating systems
LibreTranslate
self-hosted web application to translate texts
- POEditor
tool for managing PO language files
- Fink
git-based editor in the browser that connects to your repo
π Utility libraries
- Luxon
powerful, modern, and friendly wrapper for JavaScript dates and times (replaces momentjs)
- date-fns
JS library for dates
- fakenumber.org
fake phone number generator
googlei18n/libphonenumber
Google's common Java, C++ and JavaScript library for parsing, formatting, and validating international phone numbers
- intl-tel-input.com
JS library for entering and validating international phone numbers
π Resources
- Stackoverflow: Localization vs Internationalization
Localization and internationalization, what's the difference?
- Blog post: Top 12 libraries for React localization
Blog post on dev.to about top 12 libraries for react localization
- Blog post: Generating images with multi-language texts
article about images localization and i18n in blog post banners
- Blog post: Language vs Locale
what is the difference between language and locale
- Blog post: Development/Production parity for Rails i18n
blog post with a warning on using different i18n backends in development/production
- Blog post: What is 'hreflang' attribute
hreflang FAQ and explanation how to use it and why it is important for SEO
- Blog post: i18n with React Intl and SimpleLocalize
article demonstrates how to set up and manage translations with autogenerated translation keys with FormatJS
Github: FormatJS example project
example project built with React-intl and React
Github: i18next example project
example project built with i18next and React
- Guide: Google Developers - Internationalization
official Google document page
- Guide: Angular i18n
official Angular i18n document page
- Guide: Common Language Data Repository
the Unicode CLDR provides key building blocks for software to support the world's languages, with the largest and most extensive standard repository of locale data available
- ICU: International Components for Unicode
ICU is a mature and widely used providing Unicode and Globalization support for software applications
- Extract messages and translation keys from project files
extracting translation keys from project files. JavaScript, Android, iOS/macOS
π¦Ύ Automated translation
- Gengo
translation is made by real people but you can make an order using API
Nothing in this list matches your filter.
Featured in 2 awesome lists
Each link jumps to the spot where the list mentions awesome-i18n.