Adds a new language to a Next.js app that uses next-intl: translates messages/en.json, registers the locale in routing.ts and middleware.ts, and adds it to the language toggle. Use when localizing a next-intl application into another language.
Installs into .claude/skills of the current project.
Sponsors
SSkills DirectorySkills Directory
Know which skills are safe — weekly.
SSkills DirectorySkills Directory
Is that skill safe to install?
Are you the author of Next Intl Add Language?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/mouadja02-next-intl-add-language)
---
name: next-intl-add-language
description: >-
Adds a new language to a Next.js app that uses next-intl: translates messages/en.json, registers the
locale in routing.ts and middleware.ts, and adds it to the language toggle. Use when localizing a
next-intl application into another language.
license: MIT
source: "https://github.com/github/awesome-copilot"
attribution: "github/awesome-copilot by GitHub Community"
---
> **Attribution:** Sourced from [github/awesome-copilot](https://github.com/github/awesome-copilot) by [GitHub Community](https://github.com/github), licensed MIT. Modified for this collection.
This is a guide to add a new language to a Next.js project using next-intl for internationalization,
- For i18n, the application uses next-intl.
- All translations are in the directory `./messages`.
- The UI component is `src/components/language-toggle.tsx`.
- Routing and middleware configuration are handled in:
- `src/i18n/routing.ts`
- `src/middleware.ts`
When adding a new language:
- Translate all the content of `en.json` to the new language. The goal is to have all the JSON entries in the new language for a complete translation.
- Add the path in `routing.ts` and `middleware.ts`.
- Add the language to `language-toggle.tsx`.