Skip to main content
React Email supports next-intl for internationalization. This guide shows how to convert an English React Email template to support multiple locales.

Prerequisites

To get the most out of this guide, you’ll need to:
This guide will use the following email template as a base.
emails/welcome.jsx

Internationalization with next-intl

next-intl is a library for internationalization and localization for Next.js that provides a way to format messages in different languages.

1. Create messages for each locale

For each locale, create a new JSON file containing the content of the email in that locale.

2. Update the email props

Add the locale prop to the email template, interface, and test data.
emails/welcome.jsx

3. Update the email template

In the email template, remove the hardcoded content and use createTranslator function to format the email message strings.
emails/welcome.jsx
You can’t use other APIs here because the preview server will not have access to the next intl context that you might have defined in your Next.js app.

4. Update any email calls

When calling the email template, pass the locale prop to the email component.

Try it yourself

React Email with next-intl example

See the full source code.

Resend with next-intl example

See the full source code.