Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

codemagic-patch

Codemagic Patch es un servicio de actualizaciones OTA autocontenido para aplicaciones React Native que permite enviar JavaScript y assets directamente a los dispositivos instalados sin necesidad de revisión en la App Store.

Ficha actualizada 23 sept 2026, 3:29 · upstream 23 sept 2026, 3:28 · release @codemagic/react-native-patch@0.5.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es codemagic-patch

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Codemagic Patch es una solución de actualización sobre demanda (OTA) autocontenida diseñada específicamente para aplicaciones desarrolladas con React Native. Su arquitectura permite distribuir actualizaciones de JavaScript y recursos directamente desde el servidor hacia los dispositivos finales, eliminando la necesidad de revisión en tiendas de aplicaciones como App Store o Google Play Store. Esto agiliza significativamente los ciclos de desarrollo y despliegue, permitiendo que las correcciones de bugs, parches de seguridad y mejoras funcionales se implementen con una frecuencia mucho mayor que el ciclo tradicional de tiendas de aplicaciones.

El repositorio contiene todo lo necesario para ejecutar este servicio: un servidor de control (control plane + worker de release), SDK React Native (`@codemagic/react-native-patch`) con plugin de configuración Expo, CLI `cmpatch` para publicar y gestionar releases, dashboard web y una implementación Docker Compose autocontenido. La arquitectura se basa en un modelo de microservicios donde el servidor actúa como intermediario entre la aplicación móvil y los recursos del repositorio, utilizando almacenamiento S3-compatible (MinIO) para alojar los artefactos de release.

La solución utiliza un enfoque de fingerprinting nativo: cada app genera una firma única basada en su proyecto nativo, lo que garantiza que se distribuya únicamente el bundle JavaScript correspondiente a esa versión específica. Esto previene errores comunes como la actualización de JS sin actualizar el código nativo, o viceversa, y reduce drásticamente los riesgos de inestabilidad en aplicaciones móviles.

CASOS DE USO
  • Actualización rápida de bugs críticos en apps React Native sin necesidad de revisión en tiendas
  • Distribución de parches de seguridad a miles de dispositivos simultáneamente desde un solo servidor
  • Implementación de actualizaciones OTA para apps con arquitectura Old (Paper) o New Architecture
  • Reducción del tiempo de despliegue de releases: de días a minutos mediante actualizaciones directas al dispositivo
  • Gestión centralizada de múltiples apps React Native en diferentes plataformas (iOS, Android) desde una sola instancia
  • Automatización de procesos de release como cambios de versión, correcciones de bugs o migraciones entre arquitecturas
PUNTOS DESTACADOS
  • Soporte nativo para arquitectura New Architecture (React 18+) con soporte gradual en versiones anteriores
  • SDK React Native incluye plugin Expo configurado para funcionar sin necesidad de configuración adicional en la app móvil
  • API RESTful y GraphQL que permite integración con herramientas existentes como Sentry, PostHog o observability platforms
  • Soporte de actualizaciones binarias (binary patches) reduciendo el tamaño del bundle distribuido
  • Dashboard web integrado con gráficos de métricas en tiempo real para monitoreo de releases activos
  • Implementación de código firmado opcionalmente mediante herramientas como Code Signing
PRECAUCIONES
  • No soporta actualizaciones OTA en tiendas de aplicaciones (App Store, Google Play) sin un middleware adicional
  • Requisito de Node.js >=20.19 o >=22.12 para la versión estable del CLI
  • Expo SDK 52+ es obligatorio; versiones anteriores no soportan el plugin de configuración
  • No incluye herramientas de CI/CD nativas como GitHub Actions ni GitLab CI integradas
  • Depende de un servidor Docker con Compose v2, lo que limita la escalabilidad horizontal sin orquestación externa
  • El SDK React Native no soporta actualizaciones OTA en versiones anteriores a RN 0.76 (apenas Old Architecture)
  • No incluye soporte nativo para actualizaciones OTA en iOS con Xcode ni Android con ADB
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO20 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Para desplegar el servicio de Codemagic Patch, se recomienda ejecutar primero la evaluación local (`cmpatch selfhost local-eval`) para validar que todos los componentes (servidor, worker, PostgreSQL, MinIO, dashboard) funcionan correctamente. Se debe configurar un dominio propio con dos subdominios: uno para la API/dashboard y otro para el almacenamiento de artefactos. El servidor se ejecuta en modo `all` (todos los modos) para manejar releases simultáneas. Para producción, se recomienda desplegar el stack completo mediante Docker Compose (`docker compose -f docker-compose.prod.yml up`) o usar Kubernetes con Helm Charts. Se debe configurar HTTPS con Let's Encrypt y asegurar que las peticiones a la API estén protegidas con TLS 1.3. El almacenamiento en MinIO debe configurarse con permisos de lectura/escritura adecuados para el SDK y el servidor. Para mantener la salud del servicio, se rec

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsReactNode.js
SERVICIOS
PostgreSQLS3/MinIO
BASES DE DATOS
PostgreSQL
PUERTOS
808030009110
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.