Sobre o projeto

Encore é uma plataforma de infraestrutura que visa permitir que engenheiros e agentes de IA construam sistemas de produção sem esperar pela infraestrutura. Consiste em duas partes: um SDK de infraestrutura open-source para TypeScript e Go, e uma plataforma gerenciada opcional que orquestra a infraestrutura em nuvem. Com o SDK, os desenvolvedores declaram os recursos que um aplicativo precisa diretamente no código — bancos de dados SQL, tópicos Pub/Sub, buckets de armazenamento de objetos, caches, cron jobs e segredos. Cada declaração se torna um nó no grafo de aplicação do Encore. Executar `encore run` inicia todo o sistema localmente com Postgres real, semântica real de Pub/Sub e rastreamento distribuído, enquanto a implantação provisiona os equivalentes em nuvem na conta AWS ou GCP do usuário. O README fornece uma tabela de mapeamento mostrando equivalentes locais (Postgres, NSQ, sistema de arquivos local, Redis) contra serviços AWS (RDS, SNS+SQS, S3, ElastiCache) e GCP (Cloud SQL, Cloud Pub/Sub, GCS, Memorystore). A configuração é separada da semântica do aplicativo: os recursos são declarados em código, enquanto as configurações específicas do ambiente são gerenciadas através do painel da plataforma Encore, do console do provedor de nuvem ou de um provedor Terraform. O fluxo de trabalho abrange desenvolvimento local, ambientes de pré-visualização por PR (opcionalmente ramificando bancos de dados de um ambiente de seed) e implantação em produção, onde o Encore compara o grafo da aplicação com o ambiente, provisiona recursos ausentes, configura IAM de privilégio mínimo com base em caminhos de código e implementa novo código. A adoção é incremental: a infraestrutura existente pode ser usada normalmente via SDKs AWS/GCP ou APIs de terceiros, os serviços podem ser migrados um de cada vez, e a implantação pode ter como alvo um cluster Kubernetes existente ou VPC. O README afirma que 99% do código é Go ou TypeScript regular, e fornece links para um guia de migração. As limitações declaradas incluem suporte a idiomas (TypeScript/Node.js e Go agora, Python em breve), escopo de infraestrutura focado em recursos comuns, e provisionamento totalmente automatizado atualmente limitado a AWS e GCP, com Azure no roadmap e auto-hospedagem via `encore build docker` disponível em qualquer provedor. O projeto também enfatiza o desenvolvimento assistido por IA: `encore app create` pode gerar arquivos de regras para ferramentas como Cursor e Claude Code, e configurar um servidor MCP que permite que agentes inspecionem serviços, APIs, bancos de dados e rastreamentos. Um painel de desenvolvimento local em localhost:9400 mostra serviços, APIs, rastreamentos, bancos de dados, mensagens Pub/Sub e diagramas de arquitetura. A plataforma gerenciada opcional adiciona ambientes de pré-visualização, provisionamento com IAM de privilégio mínimo, rastreamento distribuído, métricas e logs, análises de custo, fluxos de trabalho de aprovação e catálogos de serviços e diagramas de arquitetura gerados automaticamente. Encore é licenciado sob MPL-2.0, com o framework, parser, compilador, runtime e CLI open-source, enquanto a plataforma de implantação gerenciada é um serviço comercial.