Encore.ts / Encore.go
Open Source Go Backend Framework
for robust type-safe applications

Video thumbnail
1. Install Encore
macOS
Windows
Linux
Brew
$ brew install encoredev/tap/encore
2. Clone Hello World example
$ encore app create --example=hello-world
3. Run locally
$ encore run

Loved by pioneering engineering teams in fast-moving startups and scaleups
See what teams are building with Encore

  • Spark
  • Alba
  • Skrym
  • Pave Bank
  • Bookshop.org
  • Carla
  • Dutch
  • Gravity
  • Alguna
  • Caribou
  • Slimrate
  • Quiqup
  • Echo
  • Rumi.ai
  • Levven
  • Lizza

Leave the maze of complexity behind

Leave the maze of complexity behind

Use functions as APIs

Encore.go generates the communication boilerplate and ensures full type-safety.


Wrap your functions using Encore.go to expose them as APIs.
Learn more

Integrate infrastructure as type-safe objects in application code

Encore makes your infrastructure type-aware and removes the need for connection strings and other boilerplate in your application.


Deploy anywhere that supports Docker images using Encore's Open Source tools.
See how
Fully automate AWS and GCP deployments with Encore Cloud Platform.
Learn more

Works with your existing stack

  • AWS
  • GCP
  • DigitalOcean
  • Neon
  • Temporal
  • Kubernetes
  • Datadog
  • Grafana
  • Next.js
  • Remix
  • Astro
  • Vue
  • Svelte
  • Prisma
  • Gorm
  • Connect
  • GitHub
  • Vercel
  • Netlify

Automated local infrastructure and built-in development dashboard

Try the local development experience:
$ encore app create --example=hello-world

Automated local infra with hot reload

encore run starts your app and all infrastructure. Forget YAML, Docker Compose, and the usual headaches.

Service Catalog & API Explorer

Automatically updated Service Catalog with full API documentation, and an API Explorer for testing your APIs.

Tracing & Logging

The local dashboard includes tracing for API requests, database calls, and Pub/Sub messages.

Architecture Diagrams

Automatic architecture diagrams give you a real-time overview of your application.

Full example project

Project

Clone this example
$ encore app create --example=uptime

Join a growing community of pioneering developers

Encore's Open Source Community is the driving force behind the project.
It's full of friendly developers supporting the project with feedback, bug fixes, and wisdom.

        Discord

        Come hang out with other friendly Encore developers on Discord.

        1k+ Members

        Join →
        GitHub

        Star and contribute to the project on GitHub.

        7k+ Stars / 70+ Contributors

        Star →
        Twitter

        Follow along on Twitter / X.

        Follow →
        YouTube

        Sit back and enjoy the videos on YouTube.

        Watch →
        Less complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibilityLess complexity creates more possibility

        Start building your first Encore.go app

        Uptime Monitor Template
        URL Shortener
        A URL shortener with a REST API and PostgreSQL database.
        Uptime Monitor Template
        Slack Bot
        Create a Cowsay Slack Bot that integrates with the Slack API.
        Uptime Monitor Template
        Event-Driven System
        Create an event-driven uptime monitoring system with this template.
        Chatty Bots
        OpenAI Chat Bot
        Create bots powered by OpenAI and integrate with Discord and Slack.

        Get started now

        1. Install Encore
        macOS
        Windows
        Linux
        Brew
        $ brew install encoredev/tap/encore
        2. Create Hello World app
        $ encore app create --example=hello-world
        3. Run locally
        $ encore run