Expo es un framework de código abierto para crear aplicaciones iOS, Android y web con React Native. Reúne lo que una aplicación React Native necesita y que React Native por sí mismo no incluye: una biblioteca de módulos nativos probados, un enrutador basado en archivos, una herramienta de línea de comandos y un conjunto de servicios en la nube (EAS) que compilan su aplicación y la envían a las tiendas. Desde 2024, la documentación de React Native recomienda empezar toda aplicación nueva con un framework, y cita a Expo como ese framework.
Si alguna vez ha montado un proyecto React Native desde cero, ya sabe por qué: Xcode, Android Studio, dependencias nativas, certificados de firma. Expo oculta esa maquinaria hasta que la necesita, y se la devuelve cuando llega el momento. Esta guía explica de qué está hecho Expo, cómo cambió en 2025 y 2026, cuánto cuesta y cuándo no es la herramienta adecuada.
Expo y React Native: un framework, no un fork
React Native es el motor. Toma componentes React escritos en JavaScript o TypeScript y los renderiza como vistas nativas reales: un botón UIKit en iOS, una View de Android en Android. Ese motor lo mantiene Meta y lo usan aplicaciones como Facebook, Instagram, Microsoft Office y Shopify.
Expo es el framework alrededor de ese motor, igual que Next.js es un framework alrededor de React. No sustituye a React Native ni lo bifurca: una aplicación Expo es una aplicación React Native, con los mismos componentes, las mismas bibliotecas y los mismos binarios nativos al final. Lo que Expo añade es la capa que, de otro modo, todo el mundo reconstruye a mano: la navegación, una biblioteca estándar de API del dispositivo, una cadena de compilación y una forma de distribuir actualizaciones.
La distinción importa por una vieja reputación. Las primeras versiones de Expo (antes de 2021) le encerraban en un conjunto fijo de módulos nativos; añadir una biblioteca nativa propia obligaba a abandonar Expo por completo. Esa limitación ha desaparecido. Hoy puede añadir cualquier módulo nativo, escribir Swift o Kotlin junto a su TypeScript, y Expo genera los proyectos nativos por usted cuando llega el momento de compilar.
Para recordar
Toda aplicación Expo es una aplicación React Native. Lo contrario no es cierto: una aplicación React Native sin Expo tiene que montar por su cuenta la navegación, los módulos nativos, los builds y las actualizaciones. La documentación de React Native lo dice sin rodeos: si va a crear una aplicación nueva, use un framework, y el recomendado es Expo.
Los bloques que lo componen
Expo se entiende mejor por capas. Usted escribe contra las dos superiores, React Native se encarga del renderizado por debajo, y un servicio en la nube aparte convierte el conjunto en algo que se puede instalar desde una tienda.
El Expo SDK: una biblioteca estándar para el teléfono
El SDK es una colección de paquetes, uno por capacidad: expo-camera, expo-location, expo-notifications, expo-file-system, expo-sensors y unas cuantas decenas más. Se prueban juntos y se publican juntos, tres veces al año, y cada versión del SDK está anclada a una versión concreta de React Native. Ese anclaje es la razón principal por la que las aplicaciones Expo se actualizan con menos fricción que las aplicaciones React Native sin framework: alguien ya ha comprobado que las piezas encajan.
Expo CLI y Expo Router
La CLI crea un proyecto, arranca el servidor de desarrollo (Metro) y ejecuta los comandos de compilación. Expo Router añade navegación basada en archivos: cada archivo de la carpeta app/ es una pantalla, y su ruta en el disco es su ruta en la app. Las mismas rutas funcionan como deep links en el teléfono y como URL en la web, sin configuración adicional. Desde el SDK 56, Expo Router ya no depende de React Navigation; bifurcó las partes que necesitaba para evolucionar por su cuenta.
Expo Go, development builds y builds de producción
Aquí es donde se pierden los recién llegados, así que va el panorama completo en una tabla. Son tres formas de ejecutar el mismo código, en etapas distintas.
| Expo Go | Development build | Build de producción | |
|---|---|---|---|
| Qué es | Una app lista para usar que incorpora el Expo SDK | Su propia app, con las herramientas de desarrollo dentro | El binario firmado que envía a las tiendas |
| Código nativo propio | No, solo los módulos del SDK | Sí | Sí |
| Cómo se obtiene | Se instala, se inicia sesión, se escanea un código QR | Se compila una vez (EAS o en local) y luego se recarga en directo | EAS Build o un build local |
| Ideal para | Prototipos, aprendizaje, enseñar una primera versión en un teléfono real | El trabajo diario en un proyecto real | La publicación |
Un cambio que conviene conocer para 2026: Expo Go pasó parte del año fuera de la App Store. Desde mayo, las versiones nuevas esperaban en la cola de revisión de Apple, así que Expo Go para los SDK 56 y 57 había que instalarlo con la Expo CLI (Android, simuladores) o como build personal de TestFlight creado con el comando eas go (iPhone). En septiembre de 2026, Expo Go para el SDK 57 volvió a la App Store con una regla nueva: hay que haber iniciado sesión con la misma cuenta de Expo en la Expo CLI y en la app Expo Go. Android recibirá la regla más adelante. Expo Go sigue siendo la forma más rápida de ver una app en un teléfono, pero Expo sigue orientando los proyectos serios hacia los development builds. Nuestra guía para probar una app con Expo Go cubre la regla de inicio de sesión, el flujo con código QR y los errores habituales.
EAS: el lado de la nube
Expo Application Services es la parte de Expo que no es de código abierto ni gratuita más allá de una cuota. Tiene tres cometidos. EAS Build compila su app en máquinas en la nube, incluidas las máquinas macOS que necesita para iOS, de modo que puede producir un build para iPhone desde Windows o Linux. EAS Submit sube el binario terminado a App Store Connect o Google Play. EAS Update envía cambios de JavaScript a las apps ya instaladas sin una nueva publicación en la tienda, dentro de las reglas que las tiendas permiten para ello. La documentación de EAS Build detalla la configuración exacta.
Qué cambió en 2025 y 2026
Dos años de versiones han llevado a Expo de envoltorio cómodo a forma por defecto de usar React Native. Los cambios que conviene conocer:
- Solo New Architecture. Desde el SDK 55, las apps Expo se ejecutan exclusivamente sobre la New Architecture de React Native: el renderizador Fabric, los TurboModules y JSI sustituyen al antiguo bridge asíncrono. React Native 0.85 (abril de 2026) la convirtió en el supuesto por defecto de todo el ecosistema, y el SDK 56 incluye de serie el motor JavaScript Hermes v1.
- El SDK 56 (mayo de 2026) va de velocidad de compilación. Los módulos iOS más pesados llegan ahora precompilados, lo que Expo cifra en builds iOS alrededor de un 16 % más rápidos, y la CLI empaqueta los proyectos en frío entre un 20 y un 50 % más deprisa.
- El SDK 57 (junio de 2026) pasa a React Native 0.86. React se mantiene en 19.2 y React Native 0.86 no anuncia cambios incompatibles, así que la subida desde el SDK 56 es ligera: mejor soporte edge-to-edge en Android, emulación de los modos claro y oscuro en React Native DevTools, y correcciones de renderizado, maquetación y animación.
- Expo UI es estable. Los componentes SwiftUI y Jetpack Compose pueden usarse desde React, de modo que una app puede adoptar los widgets más recientes de cada plataforma sin salir de TypeScript.
- Módulos nativos inline. Un archivo Swift o Kotlin puede vivir junto al TypeScript que lo llama, con tipos generados. El viejo muro entre el mundo JavaScript y el mundo nativo prácticamente ha desaparecido.
Ritmo de actualizaciones
Tres versiones del SDK al año significan una actualización cada cuatro meses aproximadamente. Cada una es pequeña si va al día, y dolorosa si se salta tres. Reserve una tarde por trimestre; es el coste real de mantenimiento de una app Expo, y es menor que el equivalente en un proyecto React Native sin framework.
Precios, límites y cuándo Expo no es la elección adecuada
El framework, el SDK, la CLI y Expo Router son gratuitos y de código abierto. Lo que cuesta dinero es la nube, y las cuentas de Apple y Google que necesita sea cual sea el framework.
| Elemento | Precio | Qué obtiene |
|---|---|---|
| Framework Expo, SDK, CLI, Router | Gratis, código abierto | Todo lo que se ejecuta en el dispositivo |
| Plan gratuito de EAS | 0 USD | 15 builds iOS y 15 builds Android al mes, cola de baja prioridad (en horas punta hay esperas de más de 90 minutos), límite de 45 minutos por build |
| EAS Starter | 19 USD al mes más consumo | Cola prioritaria, límite de 2 horas por build |
| EAS Production | 199 USD al mes más consumo | Cuotas más altas para equipos que publican a menudo |
| Apple Developer Program | 99 USD / año | Obligatorio para publicar en la App Store, sea cual sea el framework |
| Google Play Console | 25 USD (una sola vez) | Obligatorio para publicar en Google Play |
Cuándo Expo es la elección correcta
- Su equipo escribe JavaScript o TypeScript, o viene del desarrollo web.
- Quiere una sola base de código para iOS, Android y, a menudo, la web.
- Nadie en el equipo tiene un Mac, o nadie quiere mantener instalaciones de Xcode y Android Studio.
- Su app es un producto, no un juego: formularios, listas, mapas, cámara, notificaciones, pagos.
Cuándo no lo es
- La app es sobre todo código nativo a medida: un motor 3D, pipelines de audio o vídeo en tiempo real, realidad aumentada intensiva.
- El equipo ya está invertido en Swift o Kotlin, en cuyo caso Kotlin Multiplatform puede compartir más con menos fricción.
- Solo necesita un sitio web adaptado al móvil con un icono instalable: una progressive web app es más barata y no necesita ninguna tienda.
Para una visión más amplia de las alternativas, nuestra guía sobre desarrollo móvil multiplataforma compara React Native con Flutter, Kotlin Multiplatform y las apps web empaquetadas.
Cómo usa Cadrant Expo
Los proyectos móviles nativos en Cadrant son aplicaciones Expo y React Native. Usted describe la app en lenguaje natural, el proyecto generado usa el Expo SDK para las funciones del dispositivo, y la vista previa se abre en un marco de teléfono dentro del editor. Para probar en un dispositivo real, escanea un código QR con Expo Go; la mayoría de las API expo-* se ejecutan ahí directamente.
La publicación sigue el mismo camino que un desarrollador recorrería a mano, pero pilotado por Cadrant: el build iOS se ejecuta en EAS con su propia cuenta de Expo (el plan gratuito cubre 15 builds iOS al mes), y el binario terminado se envía a su cuenta de App Store Connect tras un paso guiado de inicio de sesión en Apple, creación de la app y certificado. La propiedad sigue siendo suya, en sus cuentas de Expo y Apple. Consulte la página del creador de apps móviles para ver el flujo completo.
Consejo práctico
Cree su cuenta gratuita de Expo y su membresía del Apple Developer Program el primer día, no el día del lanzamiento. La activación de la cuenta de Apple puede tardar días en el caso de una empresa, y el primer build de EAS en un plan gratuito puede esperar en la cola. En ambos casos es tiempo de calendario que no se recupera después.
En resumen: Expo es React Native con las pilas incluidas, y desde 2024 es la forma de empezar que recomienda el propio equipo de React Native. Aprenda la diferencia entre Expo Go y un development build, presupueste la cuota de nube y las cuentas de las tiendas, y el resto es React.