A lightweight, self-hostable backend with database, auth, media and workflows, built on Web Standards to run across many runtimes and frameworks.
encoredev/encore
Open-source TypeScript and Go backend framework where databases, Pub/Sub, buckets, caches and cron jobs are declared in code and run locally, then deployed to your AWS or GCP account.
Open-source alternative to:Heroku
- Stars
- 12,469
- Forks
- 638
- Open issues
- 138
- Last commit
- 10 hours ago
What is it?
Encore is an infrastructure SDK for TypeScript and Go backends. You declare resources such as SQL databases, Pub/Sub topics, object storage buckets, caches, cron jobs and secrets directly in application code. Running `encore run` starts the whole application locally with real Postgres and a local dashboard that shows distributed traces, and the same declarations are provisioned as RDS, Cloud SQL, S3, GCS or equivalent services on deploy.
The SDK is open source and can be used without Encore's managed platform. The optional platform connects to your own AWS or GCP account, provisions resources, creates per-PR preview environments, and derives least-privilege IAM from code paths. Teams that do not use the platform can run `encore build docker` and manage infrastructure with Terraform or other tools. Python and Rust support is listed as upcoming.
Key features
- 01Declare databases, Pub/Sub, buckets, caches, cron jobs and secrets in TypeScript or Go code.
- 02Run the whole application locally with real Postgres and a built-in tracing dashboard.
- 03Provision matching resources on AWS or Google Cloud when deploying.
- 04Generate per-PR preview environments with optional database branching.
- 05Build a standalone Docker image for self-hosting with your own infrastructure tooling.
Use cases
- Building new backend services in TypeScript or Go without writing cloud infrastructure configuration by hand.
- Giving AI coding agents a local environment with real infrastructure to validate changes against.
- Adding Encore-built services alongside an existing system, migrating one service at a time.
- Teams that want to keep application data and infrastructure inside their own AWS or GCP account.
Quick start
- 1
Scaffold a project
encore app create - 2
Enter the project folder
cd myapp - 3
Run locally with infrastructure and dev dashboard
encore run
Things to know
- Fully automated cloud provisioning supports only AWS and Google Cloud; Azure is on the roadmap.
- Services must be written in TypeScript or Go to use the infrastructure SDK; Python and Rust are not yet available.
- The managed deployment platform is a commercial service, separate from the open-source SDK.
Topics
FAQ
- What is encore?
- Open-source TypeScript and Go backend framework where databases, Pub/Sub, buckets, caches and cron jobs are declared in code and run locally, then deployed to your AWS or GCP account. Encore is an infrastructure SDK for TypeScript and Go backends. You declare resources such as SQL databases, Pub/Sub topics, object storage buckets, caches, cron jobs and secrets directly in application code. Running `encore run` starts the whole application locally with real Postgres and a local dashboard that shows distributed traces, and the same declarations are provisioned as RDS, Cloud SQL, S3, GCS or equivalent services on deploy.
- Is encore free to use? What license does it have?
- encore is open source under the MPL-2.0 license. Check the license terms before using it in commercial products.
- Is encore still maintained?
- Actively maintained. The last commit to encore was on Oct 19, 2026.
- What can I use encore for?
- Building new backend services in TypeScript or Go without writing cloud infrastructure configuration by hand. Giving AI coding agents a local environment with real infrastructure to validate changes against. Adding Encore-built services alongside an existing system, migrating one service at a time. Teams that want to keep application data and infrastructure inside their own AWS or GCP account.
- How do I install encore?
- Scaffold a project: encore app create Enter the project folder: cd myapp Run locally with infrastructure and dev dashboard: encore run
- Where can I get encore?
- The source code and installation instructions are on GitHub: https://github.com/encoredev/encore
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An open source Go backend shipped as a single executable, with embedded SQLite, realtime subscriptions, file and user management, and an admin UI.
A Rust runtime that lets services, workers, queues, cron jobs and agents be composed, discovered and traced through one live function catalog.
Open-source instant messaging server in Go that developers integrate into their own apps, with SDK, REST API and webhooks.
A full-stack TypeScript CMS built on Astro that aims to bring WordPress-style extensibility and admin UX to serverless, with sandboxed plugins.
A JavaScript library for building multiplayer web apps where browsers connect peer-to-peer over WebRTC without running your own server.