rsnext/examples/with-lingui
Pavel Mineev 9785ba8eca
(examples/with-lingui): update example (#26076)
Fixes one of the items from #25854

## Documentation / Examples

- [x] Make sure the linting passes
- [x] Add the StackBlitz button
- [x] [Live demo](https://stackblitz.com/github/akellbl4/next.js/tree/examples/with-lingui-update/examples/with-lingui)
2021-06-17 16:29:58 +00:00
..
components (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
locale (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
pages (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
.babelrc Include all files in Prettier (#17050) 2020-09-14 02:53:19 +00:00
.gitignore Added .gitignore to examples that are deployed to vercel (#15127) 2020-07-16 10:52:23 -04:00
lingui.config.js (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
next.config.js (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
package.json (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00
README.md (examples/with-lingui): update example (#26076) 2021-06-17 16:29:58 +00:00

With Lingui example

This example shows a way to use lingui.js with next.js.

It adds a webpack loader for the messages to avoid having to manually compile while developing as well as adds the compile step to the next build script for production builds.

The example also uses a Higher order Component which can be added to all pages which will be translated and that checks for a ?lang query string switch the language. Next.js will dynamically load in the messages for the locale when navigating using a Next.js <Link /> component.

Preview

Preview the example live on StackBlitz:

Open in StackBlitz

Deploy your own

Deploy the example using Vercel:

Deploy with Vercel

How to use

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example with-lingui with-lingui-app
# or
yarn create next-app --example with-lingui with-lingui-app

Deploy it to the cloud with Vercel (Documentation).

How to add more translated strings

To add new strings use the react component <Trans /> and then run yarn export to export the messages into locale/{language}/messages.po.

How to add another language

To add another language simply run yarn add-locale <locale ...> and it will create a new locale in the locale/messages/ directory.