Skip to main content
Lingui

Internationalization Framework for Global Products

JavaScript library for internationalization (i18n) of JavaScript projects. Supports React (including RSC and React Native), Vue, Node.js, and more.

Why Choose Lingui for Your Localization Projects?

Universal

Powerful Tooling

Full Rich-Text Support

Headache-Free Localization

Built for AI-assisted Workflows

Battle-Proven & Future Proof

Suitable for All Localization Platforms

Verified by Thousands of Developers

Fully Fledged

Workflow

Define Messages

Write messages directly in your codebase using Lingui's components.

<p>
<Trans>Hello {name}!</Trans>
</p>

Extract

Use the Lingui CLI to extract all translation keys from your codebase and create or update message catalogs.

#: src/App.tsx:24
msgid "Hello {name}!"
msgstr "Hello {name}!"

Translate

Translate your message catalogs either manually or through integration with translation tools.

#: src/App.tsx:24
msgid "Hello {name}!"
msgstr "Ahoj {name}!"

Compile

Use the Lingui CLI to compile your message catalogs into a format that can be used in your application.

module.exports = { 
messages: JSON.parse("...")
};

Deploy

Include the compiled message catalogs in your production build.

Integrating Lingui into Your Project is Easy!

import { Trans } from "@lingui/react/macro"

function App() {
return (
<Trans
comment="Docs link on the website"
>
Read the <a href="https://lingui.dev">documentation</a>
for more info.
</Trans>
)
}
Use the Trans component to wrap translatable content.

Macros Reference

Ready to localize your app?

Start with the docs, automate message extraction, and deliver translations with tools that fit your existing stack.