NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2832 most downloaded on npm
Internationalization for react done right. Using the i18next i18n ecosystem.
Last release 13 days ago
21 Sep 2026
Release timing varies
gaps range from 8 days to 2 months
Most releases are documented
notes for 44 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
388 releases · first in 2015
fixes passing interpolations options via Trans components tOptions prop 1204
Avoid redundant re-rendering in I18nextProvider 1174
One column per quarter.
Avoid setState while react is rendering 1165
typescript: fix: typescript definition of context object 1160
Trans interpolating self-closing tags in components prop(object) 1140
Trans allow components props to be an object containing named interpolation elements
providing filename when running babel.parse in icu.macro 1133
Trans: merge option in mapAST 1120
Add sideEffects false to package json to allow tree shaking 1097
fix returning defaultValue for Trans component 1092
[useTranslation] Avoid setting the new t function if the component is unmounted. (1051)[https://github.com/i18next/react-i18next/pull/1051]
t function if the component is unmounted. (1051)[https://github.com/i18next/react-i18next/pull/1051]- fixes copying ns in useSSR
typescript: Add optional defaultN 1050
typescript: Translation component's ready parameter is missing in TypeScript definition 1044
useSSR: add namespaces to init options options.ns 1031
typescript: Allow ComponentType for Trans' parent type 1021
parent type 1021typescript: Allow html props on Trans, fix parent prop type 1019
parent prop type 1019handle array fallback on wrongly configured app ;) 1010
typescript: Extend withTranslation tests to include optional props 1009
Store should be initialized after useSSR 1008
Only pass forwardedRef to children if options.withRef is false 999
remove used jsx in withTranslation to avoid issues while compiling 994
withTranslation allow not only passing a ref with option withRef but also passing a forwardedRef from outside as props (before forwardedRef was only a
Update rollup.config.js for IE11 Transpilations 988
rollup.config.js for IE11 Transpilations 988typescript: Use updated ts export default from i18next 984
Breaking based on i18next changes made in v18.0.0 changing the language should not trigger a Suspense anylonger. The state will be ready and t bound t
t bound to the previous language until languageChanged get triggered -> this results in a nicer experience for users (no flickering Suspense while changing the language). Based on issue "Suspence is fired during lang change when useTranslation called in between" 975languageChanged and languageChanging was removed from that defaultlanguageChanging to bindI18n will bring back old behaviour where a language change will trigger a Suspense / ready: false while loading those new translationsbindI18n, bindI18nStore and useSuspense in the hook by useTranslation(ns, { bindI18n, bindI18nStore, useSuspense}) or in the HOC by passing those as props.typescript: Add t function to TransProps types 969
avoid conditional hook call in edge case (was only issue in wrong setup useContext outside I18nextProvider) 951
also use count from values object passed to Trans if passed - else use the one on props 947
values object passed to Trans if passed - else use the one on props 947typescript: Update types for reportNamespaces 945
ICU: Fixes macro to support count prop and expressions better 939
avoid conditional hook call in edge case (wrong setup) 935
Trans: do not replace html tags in translation strings that are not in the transKeepBasicHtmlNodesFor array 919
Set ready flag to false when i18n instance has not been initialised 918
fix / extend icu.macro: ICU: Trans macro will parse defaults as alternate to children 917
typescript: fix types for use() 912
assert edge case trans component get set a key
only apply initial values in useSSR, withSSR on i18next instances not being a clone (eg. created by express middleware on server) ==> don't apply on s
Reload translations whenever namespaces passed to useTranslation() change 878
fixes a regression in Trans component taking namespace from passed t function 867
Restore support passing the defaultNS via I18nextProvider prop 860
HOC: expose wrapped component as WrappedComponent property 853
Fix useEffect mount/unmount usage 852
trigger suspense on languageChanging by add listening to that event too (new in i18next@15.1.0) - if you do not like this behaviour of suspending duri
- expose context 829
Support taking values for interpolation not only from content but the props count, values too: Replace count prop from in translation string automatic
brings back nsMode=default|fallback 822
Fix Trans component ignore default options 818
useTranslation useEffect also guard against unmounted for bound events...seems unmount and actual call to useEffect cleanup are not in correct order (
use forwardRef for withTranslation 802
Fix the displayName of HOC components 798
fixes: transSupportBasicHtmlNodes doesn't work with self-closing Trans 790
ReferenceError: setImmediate is not defined 787
Adding support for nested component inside Trans that are a list.map like {['a', 'b'].map(item => ( {item} ))} 784 (Adding will also create correct mi
<ul>{['a', 'b'].map(item => ( <li key={item}>{item}</li> ))}</ul> 784 (Adding <ul i18nIsDynamicList> will also create correct missing string)typescript: updated typescript definition of the UseTranslationOptions interface, added the useSuspense configuration property 778
- allow p in Trans
allow br, strong, i tags be used for translations handled by Trans
IE11 sending console as the first argument to apply 774
Allow to enable/disable useSuspense at a hook or component level 769
fix cimode won't load therefore won't be ready 768
Your coding agent can read these notes before it upgrades. Set up the MCP server →