Internationalization (i18n)
Translating apps and routing by locale.
React / Next.js
- ★ next-intl — type-safe, Next.js-native, App-Router-first, ICU MessageFormat. The default for new Next.js projects.
- next-international — alternative; type-safe, smaller surface area.
- i18next + react-i18next — long-running ecosystem; works in any React app.
- FormatJS / react-intl — ICU MessageFormat reference implementation.
- Lingui — JS macros for compile-time message extraction; small bundles.
- Tolgee — i18n + in-context editor (free OSS, paid hosted platform).
Multi-framework
- ★ Paraglide JS (Inlang) — compile-time, tree-shakeable, framework-agnostic. Strong fit with SvelteKit, Astro, and Next.js. Output bundles are tiny.
- Inlang ecosystem — tooling around Paraglide (CLI, in-editor UI).
Vue / Nuxt
- ★ Vue I18n — first-party for Vue.
- Nuxt i18n — Nuxt module on top of Vue I18n.
Translation management / glossaries
- Tolgee — open-source platform.
- Crowdin, Lokalise, Phrase — hosted translation management.
- Languine — newer AI-assisted localization platform.
Pick this if…
- Default Next.js: next-intl.
- Smallest possible bundles, multi-framework: Paraglide.
- You need an in-context editor for translators: Tolgee.
- Vue / Nuxt: Vue I18n.