Create a new file: src/i18n.js
import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import LanguageDetector from 'i18next-browser-languagedetector';
// Import translation files
import en from './locales/en.json';
import fr from './locales/fr.json';
i18n
.use(LanguageDetector) // Detects user language
.use(initReactI18next)
.init({
resources: {
en: { translation: en },
fr: { translation: fr },
},
fallbackLng: 'en',
interpolation: {
escapeValue: false, // React already escapes
},
detection: {
order: ['localStorage', 'navigator', 'htmlTag'],
caches: ['localStorage'],
},
});
export default i18n;