Statically extract translation keys from i18next application.
npm install babel-plugin-i18next-extract
!Logo





---
babel-plugin-i18next-extract is a Babel Plugin that will
traverse your Javascript/Typescript code in order to find i18next translation keys.
- ✅ Keys extraction in JSONv4 format.
- ✅ Detection of i18next.t() function calls.
- ✅ Full react-i18next support.
- ✅ Plurals support.
- ✅ Contexts support.
- ✅ Namespace detection.
- ✅ Disable extraction on a specific file sections or lines using comment hints.
- ✅ Overwrite namespaces, plurals and contexts on-the-fly using comment hints.
- … and more?
You can check out the full documentation at i18next-extract.netlify.app.
``bash
yarn add --dev babel-plugin-i18next-extract
npm i --save-dev babel-plugin-i18next-extract
`
> If you don't have a babel configuration yet, you can follow the Configure Babel documentation page to get started.
Declare the plugin like any other plugin in your .babelrc and you're good to go:
`javascript`
{
"plugins": [
"i18next-extract",
// […] your other plugins […]
]
}
You may want to specify additional configuration options:
`javascript`
{
"plugins": [
["i18next-extract", {"nsSeparator": "~"}],
// […] your other plugins […]
]
}
> For an exhaustive list of configuration options, check out the Configuration page.
Once the plugin is setup, you can build your app normally or run Babel through Babel CLI:
`bash
yarn run babel -f .babelrc 'src/*/.{js,jsx,ts,tsx}'
npm run babel -f .babelrc 'src/*/.{js,jsx,ts,tsx}'
`
Extracted translations land in the extractedTranslations/` directory by default.