| Product | Encore |
| Website | encore.dev |
| Category | Backend Framework / Infrastructure |
| Languages | TypeScript, Go |
| Pricing | Free (self-host), Cloud from $99/month |
What Is Encore?
Encore is a backend development engine that generates infrastructure from your application code. You write TypeScript or Go services using Encore’s framework, and Encore analyzes your code to understand what infrastructure you need — databases, queues, cron jobs, pub/sub topics — and provisions it automatically. There’s no Terraform, no YAML, no infrastructure configuration files.
The key insight is that your code already declares its infrastructure requirements implicitly. When you create a database migration, you need a database. When you schedule a function to run hourly, you need a cron job. When you publish to a topic, you need a pub/sub system. Encore makes these requirements explicit and provisions the infrastructure to match.
Key Features
Infrastructure From Code
Define a SQL database by writing a migration file. Define a cron job by annotating a function. Define a pub/sub topic by declaring a topic type. Encore reads your code, generates the infrastructure graph, and provisions it. The infrastructure is always in sync with the code because it’s derived from it.
Local Development Environment
encore run starts your entire backend locally. Databases, queues, and pub/sub all run locally with real implementations, not mocks. Your local environment matches production because the same infrastructure derivation runs in both places. Tracing is built in: see every API call, database query, and queue message in the local dev dashboard.
Automatic API Documentation
Encore generates API documentation from your code’s type signatures. The documentation is always current because it’s generated, not written. Request and response types, endpoint paths, authentication requirements — all derived from the code.
Cloud-Agnostic Deployment
Deploy to AWS or GCP through Encore Cloud, or self-host with the open-source tools. The infrastructure Encore provisions adapts to the target cloud: on AWS, a database becomes RDS; on GCP, it becomes Cloud SQL. Your code doesn’t change between clouds.
Who Is This For?
- Backend developers who want to focus on business logic and skip infrastructure configuration
- Startups that need production infrastructure without a dedicated DevOps team
- Teams using TypeScript or Go who want a cohesive backend framework
- Microservice architectures where service-to-service communication needs to be type-safe
Pros
- Infrastructure derived from code (no Terraform/YAML)
- Local development with real infrastructure (not mocks)
- Built-in distributed tracing
- Auto-generated API docs
- Open source and self-hostable
- Cloud-agnostic (AWS, GCP, self-host)
Cons
- Framework lock-in (must use Encore’s patterns)
- Only TypeScript and Go
- Cloud provisioning through Encore Cloud costs $99+/mo
- Opinionated service structure
- Smaller community than Express or Gin
Verdict
Encore’s infrastructure-from-code approach is the right direction for backend development. Writing Terraform alongside your application code is a solved problem that keeps getting re-solved; Encore eliminates the problem by deriving infrastructure from the code itself. For teams that are willing to adopt its framework patterns, the productivity gain is substantial.
The trade-off is framework lock-in. Encore’s patterns are not standard TypeScript or Go — you’re writing Encore TypeScript or Encore Go. If you later decide to leave Encore, you’ll need to rewrite the infrastructure layer. This is the same trade-off as any framework, but it’s worth naming explicitly.
Build a backend framework or infrastructure tool?
Get reviewed and linked from our 27-site network. Placements live in 48 hours.
See Packages