Skip to main content

Internacionalización (i18n)

La aplicación soporta múltiples idiomas mediante i18next y react-i18next.

Stack

Idiomas soportados

Si el idioma del dispositivo no es español ni inglés, la app utiliza inglés como idioma por defecto.

Detección de idioma

La detección del idioma se realiza automáticamente al iniciar la app:
  1. Se busca la preferencia guardada en AsyncStorage (clave userLanguage)
  2. Si no hay preferencia guardada, se detecta el idioma del dispositivo (iOS y Android)
  3. Si el idioma detectado no está soportado, se usa inglés como fallback

Archivos de traducción

Secciones de traducción

Cada archivo de traducción contiene las siguientes secciones:

Localización de calendarios

Los calendarios (react-native-calendars) están configurados con nombres de meses y días en español e inglés. La localización se aplica automáticamente según el idioma seleccionado.

Inicialización

initializeI18n() se invoca durante el hook useAppInitialization. No es necesario llamarla manualmente.

Uso en componentes

Agregar una nueva cadena de texto

Agrega la nueva key en ambos archivos de traducción:
Siempre agrega la traducción en ambos idiomas (en.ts y es.ts). Si solo agregas en uno, el usuario verá la key sin traducir en el otro idioma.

API de funciones