Encore is an infrastructure platform that lets developers declare cloud resources directly in application code and orchestrates their provisioning across local development, preview environments, and production clouds.
Encore solves the problem of infrastructure setup friction by providing an open source SDK for TypeScript and Go that lets developers declare resources like databases, Pub/Sub systems, object storage, caches, cron jobs, and secrets as code annotations. When you run `encore run` locally, the tool stands up real equivalents—actual Postgres databases, NSQ for Pub/Sub, Redis for caching—with distributed tracing enabled. The same declarations then drive cloud provisioning: the platform diffs your application graph against your target environment and provisions missing resources in AWS or GCP, mapping local resources to their cloud equivalents automatically.
Encore suits teams building backend systems who want to eliminate infrastructure provisioning delays without sacrificing control. The tool works well for those who prefer declaring infrastructure needs alongside application code rather than managing separate IaC files, and it removes the friction of context-switching between local development and cloud deployment. You can use just the SDK for local development and handle cloud provisioning yourself via Terraform or other tools, or adopt the optional managed platform for automated preview environments and production orchestration. The platform separates application semantics from environment-specific configuration, keeping services portable across clouds and regions.
The project maintains active development across both the open source SDK and the managed platform components. The codebase is written primarily in Go and covers multiple language SDKs with TypeScript and Go currently supported. The project provides comprehensive documentation and examples showing resource declaration patterns and configuration workflows. Development activity spans infrastructure provisioning logic, cloud provider integrations for both AWS and GCP, local development tooling, and the managed platform dashboard for configuration management.