À propos du projet
Encore est une plateforme d'infrastructure visant à permettre aux ingénieurs et aux agents IA de construire des systèmes de production sans attendre l'infrastructure. Elle se compose de deux parties : un SDK d'infrastructure open source pour TypeScript et Go, et une plateforme managée optionnelle qui orchestre l'infrastructure cloud.
Avec le SDK, les développeurs déclarent les ressources dont une application a besoin directement dans le code — bases de données SQL, topics Pub/Sub, buckets de stockage objet, caches, tâches cron et secrets. Chaque déclaration devient un nœud dans le graphe d'application d'Encore. L'exécution de `encore run` démarre tout le système localement avec un vrai Postgres, une vraie sémantique Pub/Sub et du tracing distribué, tandis que le déploiement provisionne les équivalents cloud dans le propre compte AWS ou GCP de l'utilisateur. Le README fournit un tableau de correspondance montrant les équivalents locaux (Postgres, NSQ, système de fichiers local, Redis) face aux services AWS (RDS, SNS+SQS, S3, ElastiCache) et GCP (Cloud SQL, Cloud Pub/Sub, GCS, Memorystore).
La configuration est séparée de la sémantique applicative : les ressources sont déclarées dans le code, tandis que les paramètres propres à l'environnement sont gérés via le tableau de bord de la plateforme Encore, la console du fournisseur cloud ou un provider Terraform. Le workflow couvre le développement local, les environnements de prévisualisation par PR (avec possibilité de créer des branches de bases de données à partir d'un environnement seed) et le déploiement en production, où Encore compare le graphe d'application à l'environnement, provisionne les ressources manquantes, configure un IAM au moindre privilège en fonction des chemins de code et déploie le nouveau code.
L'adoption est incrémentale : l'infrastructure existante peut être utilisée normalement via les SDK AWS/GCP ou des API tierces, les services peuvent être migrés un par un, et le déploiement peut cibler un cluster Kubernetes ou un VPC existant. Le README indique que 99 % du code est du Go ou du TypeScript classique, et renvoie à un guide de migration.
Les limitations énoncées incluent la prise en charge des langages (TypeScript/Node.js et Go aujourd'hui, Python bientôt), un périmètre d'infrastructure centré sur les ressources courantes, et un provisionnement entièrement automatisé actuellement limité à AWS et GCP, avec Azure sur la feuille de route et l'auto-hébergement via `encore build docker` disponible chez n'importe quel fournisseur.
Le projet met également l'accent sur le développement assisté par IA : `encore app create` peut générer des fichiers de règles pour des outils tels que Cursor et Claude Code, et configurer un serveur MCP qui permet aux agents d'introspecter les services, les API, les bases de données et les traces. Un tableau de bord de développement local sur localhost:9400 affiche les services, les API, les traces, les bases de données, les messages Pub/Sub et les diagrammes d'architecture. La plateforme managée optionnelle ajoute des environnements de prévisualisation, le provisionnement avec un IAM au moindre privilège, le tracing distribué, les métriques et les logs, l'analyse des coûts, les workflows d'approbation, ainsi que des catalogues de services et des diagrammes d'architecture générés automatiquement. Encore est sous licence MPL-2.0, avec le framework, le parser, le compilateur, le runtime et la CLI en open source, tandis que la plateforme de déploiement managée est un service commercial.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.