Repolode
encoredev

encoredev/encore

开源后端框架,在代码中声明数据库、消息队列、对象存储等基础设施,本地即可运行,并部署到自有 AWS 或 GCP 账户。

可替代:Heroku

Star
12,469
Fork
638
未关闭 Issue
138
最近提交
14小时前

这是什么?

Encore 是一个面向 TypeScript 和 Go 后端的基础设施 SDK。开发者直接在代码中声明 SQL 数据库、Pub/Sub 主题、对象存储桶、缓存、定时任务和密钥等资源。执行 `encore run` 即可在本地启动完整应用,包括真实的 Postgres 以及可查看分布式追踪的本地面板;部署时,同样的声明会在 AWS 或 Google Cloud 上对应生成 RDS、Cloud SQL、S3、GCS 等服务。

SDK 为开源项目,也可以脱离 Encore 的托管平台单独使用。托管平台可连接到开发者自己的 AWS 或 GCP 账户,负责资源配置,并支持为每个 PR 创建预览环境,依据代码路径生成最小权限的 IAM 策略。不使用平台的团队可以通过 `encore build docker` 构建镜像,再用 Terraform 等工具自行管理基础设施。Python 与 Rust 支持尚在规划中。

核心功能

  • 01在 TypeScript 或 Go 代码中声明数据库、Pub/Sub、存储桶、缓存、定时任务和密钥。
  • 02使用真实 Postgres 在本地运行整个应用,并带有分布式追踪面板。
  • 03部署时在 AWS 或 Google Cloud 中自动配置对应资源。
  • 04为每个 Pull Request 生成预览环境,可选择从种子环境分支数据库。
  • 05通过 `encore build docker` 生成独立镜像,便于自行托管。

适用场景

  • 在不手写云基础设施配置的情况下,用 TypeScript 或 Go 构建新的后端服务。
  • 为 AI 编程代理提供接近生产环境的本地基础设施,用于验证代码改动。
  • 在现有系统旁逐个服务迁移,新服务通过 API 与原系统集成。
  • 希望将应用与基础设施保留在自有 AWS 或 GCP 账户中的团队。

快速上手

  1. 1

    创建项目骨架

    encore app create
  2. 2

    进入项目目录

    cd myapp
  3. 3

    在本地运行,包含基础设施和开发仪表盘

    encore run

使用前须知

  • 全自动云资源配置目前仅支持 AWS 和 Google Cloud,Azure 仍在路线图中。
  • 要使用基础设施 SDK,服务必须用 TypeScript 或 Go 编写;Python 和 Rust 尚不可用。
  • 托管部署平台是商业服务,与开源 SDK 分开。

标签

常见问题

encore 是什么?
开源后端框架,在代码中声明数据库、消息队列、对象存储等基础设施,本地即可运行,并部署到自有 AWS 或 GCP 账户。 Encore 是一个面向 TypeScript 和 Go 后端的基础设施 SDK。开发者直接在代码中声明 SQL 数据库、Pub/Sub 主题、对象存储桶、缓存、定时任务和密钥等资源。执行 `encore run` 即可在本地启动完整应用,包括真实的 Postgres 以及可查看分布式追踪的本地面板;部署时,同样的声明会在 AWS 或 Google Cloud 上对应生成 RDS、Cloud SQL、S3、GCS 等服务。
encore 可以免费使用吗?用的什么许可证?
encore 以 MPL-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
encore 还在维护吗?
活跃维护中。encore 最近一次提交是在 2026年10月19日。
encore 适合用来做什么?
在不手写云基础设施配置的情况下,用 TypeScript 或 Go 构建新的后端服务。 为 AI 编程代理提供接近生产环境的本地基础设施,用于验证代码改动。 在现有系统旁逐个服务迁移,新服务通过 API 与原系统集成。 希望将应用与基础设施保留在自有 AWS 或 GCP 账户中的团队。
encore 怎么安装和运行?
创建项目骨架: encore app create 进入项目目录: cd myapp 在本地运行,包含基础设施和开发仪表盘: encore run
在哪里获取 encore?
源代码和安装说明在 GitHub 上:https://github.com/encoredev/encore

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目