# Internacionalización

Dynamic Framework usa la librería i18next para internacionalizar aplicaciones y sitios web. Esto permite adaptar el contenido y la interfaz de usuario a diferentes idiomas y regiones.

Dynamic Framework emplea buenas prácticas para lograr una internacionalización eficiente, entre ellas:

  • Separación de textos y código: Separar los textos de la aplicación del código fuente simplifica la gestión y actualización de contenidos en diferentes idiomas, sin necesidad de modificar el código.
  • Archivos de traducción: Usar archivos de traducción JSON o YAML para almacenar las cadenas de texto en diferentes idiomas. Así, cada archivo representa un idioma y contiene un conjunto de claves con sus respectivas traducciones.
  • Claves descriptivas: Fomentar el uso de claves descriptivas que hacen referencia al contexto y al propósito del texto, en lugar de usar directamente los textos como claves en los archivos de traducción. Esto facilita la identificación y mantenimiento de las traducciones.
  • Estructura jerárquica: Organizar las traducciones en una estructura jerárquica ayuda a gestionar grandes aplicaciones con múltiples componentes y secciones. Además, esta estructura contribuye a mantener el orden y la coherencia en las traducciones.
  • Variables y parámetros: Usar variables y parámetros en las cadenas de texto facilita la inclusión de información dinámica en las traducciones. Esto es esencial para mantener la coherencia y la comprensión en diferentes idiomas.
  • Plurales y formas singulares/plurales: Ofrecer soporte para manejar las reglas de pluralización en diferentes idiomas es fundamental para ajustar las traducciones según la cantidad o contexto.
  • Funciones de traducción contextual: Proporcionar funciones para la traducción contextual te permite traducir un mismo texto de diferentes formas, según el contexto en el que se utilice.
  • Etiquetas de lenguaje y regiones: Proporcionar una librería compatible con etiquetas de lenguaje (como "en" para inglés) y etiquetas de lenguaje-región (como "en-US" para inglés estadounidense) facilita la adaptación a las diferencias regionales.
  • Carga dinámica de traducciones: Admitir la carga dinámica de traducciones puede ser útil para aplicaciones grandes, con múltiples módulos o para aplicaciones de una sola página.
  • Plugins y extensiones: Ofrecer los plugins y extensiones que la comunidad de Dynamic Framework ha desarrollado agrega características adicionales, como traducción en tiempo real o compatibilidad con frameworks específicos.

Estas prácticas contribuyen a que la internacionalización sea más eficiente y manejable en aplicaciones frontend.