Sobre el proyecto
Encore es una plataforma de infraestructura cuyo objetivo es permitir que ingenieros y agentes de IA construyan sistemas de producción sin esperar por la infraestructura. Consta de dos partes: un SDK de infraestructura de código abierto para TypeScript y Go, y una plataforma gestionada opcional que orquesta la infraestructura en la nube.
Con el SDK, los desarrolladores declaran los recursos que necesita una aplicación directamente en el código: bases de datos SQL, temas de Pub/Sub, buckets de almacenamiento de objetos, cachés, tareas cron y secretos. Cada declaración se convierte en un nodo del grafo de aplicación de Encore. Ejecutar `encore run` inicia todo el sistema localmente con Postgres real, semántica real de Pub/Sub y trazabilidad distribuida, mientras que el despliegue aprovisiona los equivalentes en la nube en la propia cuenta de AWS o GCP del usuario. El README proporciona una tabla de correspondencias que muestra los equivalentes locales (Postgres, NSQ, sistema de archivos local, Redis) frente a los servicios de AWS (RDS, SNS+SQS, S3, ElastiCache) y GCP (Cloud SQL, Cloud Pub/Sub, GCS, Memorystore).
La configuración se separa de la semántica de la aplicación: los recursos se declaran en el código, mientras que los ajustes específicos de cada entorno se gestionan a través del panel de la plataforma Encore, la consola del proveedor de nube o un proveedor de Terraform. El flujo de trabajo abarca el desarrollo local, entornos de vista previa por PR (opcionalmente con bases de datos ramificadas desde un entorno semilla) y el despliegue a producción, donde Encore compara el grafo de aplicación con el entorno, aprovisiona los recursos faltantes, configura IAM de privilegio mínimo basado en las rutas del código y despliega el nuevo código.
La adopción es incremental: la infraestructura existente puede usarse con normalidad mediante los SDK de AWS/GCP o API de terceros, los servicios pueden migrarse de uno en uno, y el despliegue puede dirigirse a un clúster de Kubernetes o VPC existente. El README afirma que el 99% del código es Go o TypeScript normal, y enlaza a una guía para migrar fuera de la plataforma.
Las limitaciones declaradas incluyen el soporte de lenguajes (TypeScript/Node.js y Go ahora, Python próximamente), un alcance de infraestructura centrado en recursos comunes, y un aprovisionamiento totalmente automatizado limitado actualmente a AWS y GCP, con Azure en la hoja de ruta y autoalojamiento mediante `encore build docker` disponible en cualquier proveedor.
El proyecto también hace hincapié en el desarrollo asistido por IA: `encore app create` puede generar archivos de reglas para herramientas como Cursor y Claude Code, y configurar un servidor MCP que permite a los agentes inspeccionar servicios, API, bases de datos y trazas. Un panel de desarrollo local en localhost:9400 muestra servicios, API, trazas, bases de datos, mensajes de Pub/Sub y diagramas de arquitectura. La plataforma gestionada opcional añade entornos de vista previa, aprovisionamiento con IAM de privilegio mínimo, trazabilidad distribuida, métricas y logs, análisis de costes, flujos de aprobación y catálogos de servicios y diagramas de arquitectura generados automáticamente. Encore tiene licencia MPL-2.0, con el framework, el parser, el compilador, el runtime y la CLI de código abierto, mientras que la plataforma de despliegue gestionada es un servicio comercial.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.