[](https://stand-with-ukraine.pp.ua)
npm install ttag

Modern javascript i18n localization library based on ES6 tagged templates and the good old GNU gettext
  !downloads

---
- Uses ES6 template literals for string formatting (no need for sprintf).
- Contexts support
- It can precompile translations on a build step.
- Plurals support ngettext.
- It can be integrated in any build tool that works with babel.
- Has a builtin validation for translated strings format.
- It can use any default locale in sources (not only English).
- Handles React (jsx) translations.
- Can be easily integrated with Create React App. CRA doc
``js
import { t, ngettext, msgid } from 'ttag';
// formatted strings
const name = 'Mike';
const helloMike = tHello ${name};
// plurals (works for en locale out of the box)
const n = 5;
const msg = ngettext(msgid${n} task left, ${n} tasks left, n);`
`bash`
npm install --save ttag
You may also need to install ttag-cli for po files manipulation.
ttag cli - https://github.com/ttag-org/ttag-cli
`bash``
npm install --save-dev ttag-cli
https://unpkg.com/ttag/dist/ttag.min.js
> This project is designed to work in pair with babel-plugin-ttag.
> But you can also play with it without transpilation.
Give a ⭐️ if this project helped you!
- Documentation
- Changelog
- Quick Start
- Quick view on JsFiddle playground
This project is licensed under the MIT license.