Internationalization (i18n)
Ever Works is built with internationalization in mind, supporting multiple languages out of the box using next-intl.
๐ Supported Languagesโ
The template comes with built-in support for:
- ๐ฌ๐ง English (en) - Default language
- ๐ซ๐ท French (fr)
- ๐ช๐ธ Spanish (es)
- ๐ฉ๐ช German (de)
- ๐จ๐ณ Chinese (zh)
- ๐ธ๐ฆ Arabic (ar)
- ๐ง๐ฌ Bulgarian (bg)
- ๐ณ๐ฑ Dutch (nl)
- ๐ฎ๐ฑ Hebrew (he)
- ๐ฎ๐น Italian (it)
- ๐ต๐ฑ Polish (pl)
- ๐ต๐น Portuguese (pt)
- ๐ท๐บ Russian (ru)
How It Worksโ
URL-based Localizationโ
Ever Works uses URL-based locale detection:
https://yoursite.com/en/about โ English
https://yoursite.com/fr/about โ French
https://yoursite.com/es/about โ Spanish
Automatic Locale Detectionโ
The system automatically:
- Detects user's browser language
- Redirects to appropriate locale
- Remembers user's language preference
- Falls back to default language (English)
Translation Architectureโ
Translation Filesโ
Translations are stored in JSON files:
messages/
โโโ en.json # English
โโโ fr.json # French
โโโ es.json # Spanish
โโโ de.json # German
โโโ zh.json # Chinese
โโโ ar.json # Arabic
Quick Exampleโ
import { useTranslations } from 'next-intl';
export function MyComponent() {
const t = useTranslations('common');
return (
<div>
<h1>{t('welcome')}</h1>
<p>{t('description')}</p>
</div>
);
}
Featuresโ
โ Complete Translation Coverageโ
- UI components
- Form labels and validation messages
- Email templates
- Error messages
- SEO metadata
โ RTL Supportโ
- Automatic RTL layout for Arabic and Hebrew
- Mirrored UI elements
- Proper text alignment
โ Date and Number Formattingโ
- Locale-specific date formats
- Currency formatting
- Number formatting
โ Pluralizationโ
- Automatic plural forms
- Language-specific rules
Next Stepsโ
- Translation Guide โ - Learn how to add and manage translations
- Getting Started - Set up your project
- Customization - Customize your site
Need Help?โ
Check our support page for assistance with internationalization.