import i18n from 'i18next' import { initReactI18next } from 'react-i18next' import LanguageDetector from 'i18next-browser-languagedetector' import enTranslation from './locales/en/translation.json' import esTranslation from './locales/es/translation.json' import frTranslation from './locales/fr/translation.json' import deTranslation from './locales/de/translation.json' import zhTranslation from './locales/zh/translation.json' const resources = { en: { translation: enTranslation }, es: { translation: esTranslation }, fr: { translation: frTranslation }, de: { translation: deTranslation }, zh: { translation: zhTranslation }, } i18n .use(LanguageDetector) // Detect user language .use(initReactI18next) // Pass i18n instance to react-i18next .init({ resources, fallbackLng: 'en', // Fallback to English if translation not found debug: false, // Debug mode disabled (enable temporarily for troubleshooting) interpolation: { escapeValue: false, // React already escapes values }, detection: { order: ['localStorage', 'navigator'], // Check localStorage first, then browser language caches: ['localStorage'], // Cache language selection in localStorage lookupLocalStorage: 'charon-language', // Key for storing language in localStorage }, }) export default i18n