Ayudando a migrar bibliotecas de React Native a la Nueva Arquitectura
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →
tl;dr: Estamos mejorando los recursos para la Nueva Arquitectura de React Native. Ya hemos publicado un repositorio para migrar aplicaciones (RNNewArchitectureApp) y otro para bibliotecas (RNNewArchitectureLibraries). También estamos renovando la guía de Nueva Arquitectura en el sitio web y creamos un Grupo de Trabajo en GitHub para responder preguntas relacionadas.
Introducción
En esta publicación compartimos actualizaciones sobre herramientas y recursos para migrar tus Módulos Nativos y Componentes Nativos a sus equivalentes en la Nueva Arquitectura: TurboModules y Componentes Fabric.
Los usuarios de React Native aprovechan numerosas bibliotecas de código abierto para crear aplicaciones. Para tener un ecosistema completo y consistente, es necesario que estas bibliotecas migren para que todos puedan beneficiarse de las capacidades y mejoras de rendimiento de la Nueva Arquitectura.
Esto es lo que estamos haciendo para apoyar a los desarrolladores de bibliotecas en su migración:
-
Documentación: Estamos ampliando la guía de Nueva Arquitectura en el sitio web para cubrir más conceptos y el desarrollo de componentes.
-
Ejemplos de migración: Hemos creado dos repositorios que muestran cómo migrar una aplicación de React Native (RNNewArchitectureApp) y cómo crear Componentes Fabric y TurboModules compatibles con ambas arquitecturas (RNNewArchitectureLibraries).
-
Soporte: Este año creamos un Grupo de Trabajo en GitHub dedicado a discusiones y preguntas sobre la Nueva Arquitectura.
En esta publicación profundizaremos en estos recursos y explicaremos cómo usarlos eficientemente. Finalmente, proporcionaremos un panorama del estado actual de migración de las bibliotecas más usadas de React Native.
Documentación
En los últimos 6 meses, hemos añadido una guía sobre la adopción de la Nueva Arquitectura y un análisis en profundidad de la arquitectura sobre Fabric. Planeamos ampliar esto para incluir más guías y documentación sobre la creación de TurboModules, la comprensión de Codegen, y más. Tenemos previsto compartir actualizaciones para el lanzamiento de la versión 0.70.
Actualmente, la guía de Nueva Arquitectura cubre cómo migrar tu aplicación y tus bibliotecas para soportarla correctamente.
Si te interesa seguir la evolución de esta guía o dar feedback, puedes seguir este pull request.
Ejemplos de migración
Para desarrolladores que prefieren seguir ejemplos de código, preparamos dos repositorios de ejemplo.
RNNewArchitectureApp
Este repositorio demuestra cómo migrar una aplicación, sus módulos nativos y componentes nativos desde la arquitectura heredada en React Native 0.67 hasta la Nueva Arquitectura en la versión más reciente. Cada commit corresponde a un paso de migración independiente.

El repositorio está organizado así:
-
Una rama main sin código pero con un README.md que referencia otras ramas.
-
Varias ramas de migración que muestran la migración desde una versión específica de RN a otra.
Algunas ramas de migración también incluyen un archivo RUN.md que describe de forma más legible los pasos exactos aplicados en cada commit.
Planeamos mantener este ejemplo actualizado con las versiones estables más recientes, añadiendo migraciones para cada versión menor de React Native que lancemos. Si detectas algún problema en los pasos, por favor abre un issue en el repositorio. Esto continuará hasta que tengamos la sensación razonable de que la mayoría de usuarios de React Native hayan migrado a la Nueva Arquitectura.
RNNewArchitectureLibraries
De manera similar, este repositorio proporciona una guía paso a paso para crear un TurboModule y un Componente Fabric. Se enfoca en garantizar compatibilidad con versiones anteriores entre la Nueva Arquitectura y la heredada.
La organización del repositorio es similar al anterior:
-
Una rama main sin código pero con un README.md que referencia otras ramas.
-
Otras ramas que muestran cómo desarrollar TurboModules y Componentes Fabric.
Planeamos mantener este ejemplo actualizado con los nuevos lanzamientos de React Native, especialmente aquellos que afecten al desarrollo de bibliotecas, así como añadir más ejemplos sobre características avanzadas (ej: implementar comandos, emisores de eventos, estado personalizado). Si detectas errores, por favor abre un issue en el repositorio de ejemplo.
Soporte
Hemos creado un grupo de trabajo dedicado para que la comunidad pueda hacer preguntas y obtener actualizaciones sobre la Nueva Arquitectura. Si mantienes una biblioteca, este es un recurso valioso para resolver dudas y para que conozcamos tus necesidades. Para unirte, sigue estas instrucciones. Todos son bienvenidos.
El grupo de trabajo está organizado en varias secciones:
-
Anuncios: Espacio para compartir hitos y actualizaciones importantes del despliegue
-
Profundización: Espacio para debatir temas técnicos específicos
-
Documentación: Espacio para discutir la documentación y material de migración
-
Bibliotecas: Espacio para conversar sobre bibliotecas de terceros y su migración
-
Preguntas y Respuestas: Espacio para solicitar ayuda comunitaria sobre la Nueva Arquitectura
-
Lanzamientos: Espacio para debatir errores específicos de versiones
Para usar este grupo efectivamente:
-
Asegúrate que tu biblioteca esté listada en la sección Bibliotecas. Esto nos ayudará a compartir actualizaciones sobre su migración y entender los desafíos que enfrentan los autores.
-
Usa la sección de Preguntas y Respuestas si enfrentas bloqueos técnicos. Nuestro equipo y expertos comunitarios monitorean y brindarán soporte según disponibilidad.
-
Mantente atento a otras secciones por temas que puedan afectarte. Un nuevo lanzamiento podría incluir exactamente la API que necesitas. Puedes suscribirte a discusiones específicas mediante GitHub.
Planeamos apoyar a este grupo hasta que la New Architecture esté habilitada por defecto y todas las bibliotecas principales se hayan migrado a ella.
Estado de migración de bibliotecas populares
Los mantenedores de bibliotecas han compartido con nosotros en el grupo de trabajo el estado de sus esfuerzos de migración, y queremos ofrecerles un resumen rápido:
-
react-native-gesture-handler: ✅ Migrada
-
react-native-navigation: 🏃♂️ En progreso
-
react-native-pager-view: 🏃♂️ En progreso
-
react-native-reanimated: ✅ Migrada. En proceso de pruebas y optimización de rendimiento
-
react-native-screens: 🏃♂️ En progreso
-
react-native-slider: 🎬 Iniciada
-
react-native-template-new-architecture: ✅ Migrada. Adoptando/probando gradualmente más bibliotecas complementarias
-
react-native-template-typescript: ✅ Migrada
-
react-native-webview: 🎬 Iniciada
Próximos pasos
Estamos comprometidos en apoyar la adopción de la New Architecture por parte de la comunidad de React Native. Concretamente, continuaremos:
-
Ofrecer soporte de mejor esfuerzo en el Grupo de trabajo.
-
Proporcionar más ejemplos sobre cómo lograr resultados sorprendentes con la New Architecture en los repositorios RNNewArchitecture.
-
Proporcionar documentación clara y actualizada sobre la New Architecture.
-
Seguir el estado de migración de bibliotecas esenciales de React Native en el Grupo de trabajo.
-
Simplificar el proceso de migración para desarrolladores
Además, React Native 0.69 incluirá mejoras en la experiencia de desarrollo (devX) para desarrolladores de aplicaciones y bibliotecas que adopten la New Architecture. Puedes encontrar más información sobre el lanzamiento de la versión 0.69.0 aquí.
¡Estamos entusiasmados con lo que construiremos juntos con la New Architecture!
