Repolode
encoredev

encoredev/encore

データベース、Pub/Sub、バケット、キャッシュ、cronジョブをコードで宣言できるオープンソースのTypeScript・Go向けバックエンドフレームワーク。ローカルで実行し、AWSまたはGCPの自分のアカウントにデプロイできます。

代替できる製品:Heroku

スター
12,469
フォーク
638
未解決の Issue
138
最終コミット
16 時間前

これは何?

Encoreは、TypeScriptとGoのバックエンド向けインフラSDKです。SQLデータベース、Pub/Subトピック、オブジェクトストレージのバケット、キャッシュ、cronジョブ、シークレットなどのリソースを、アプリケーションコード内で直接宣言します。`encore run`を実行すると、実際のPostgresを使ってアプリケーション全体がローカルで起動し、分散トレースを表示するダッシュボードも利用できます。デプロイ時には、同じ宣言に基づいてRDS、Cloud SQL、S3、GCSなどのリソースがプロビジョニングされます。

SDKはオープンソースで、Encoreのマネージドプラットフォームを使わずに利用できます。オプションのプラットフォームはユーザー自身のAWSまたはGCPアカウントに接続し、リソースをプロビジョニングして、PRごとのプレビュー環境を作成します。また、コードパスをもとに最小権限のIAM設定を導き出します。プラットフォームを使わないチームは、`encore build docker`を実行し、Terraformなどのツールでインフラを管理できます。PythonとRustのサポートは今後追加予定です。

主な機能

  • 01データベース、Pub/Sub、バケット、キャッシュ、cronジョブ、シークレットをTypeScriptまたはGoのコードで宣言できます。
  • 02実際のPostgresと組み込みのトレースダッシュボードを使って、アプリケーション全体をローカルで実行できます。
  • 03デプロイ時に、AWSまたはGoogle Cloud上に対応するリソースをプロビジョニングできます。
  • 04オプションのデータベースブランチ機能を使い、PRごとのプレビュー環境を作成できます。
  • 05独自のインフラ管理ツールを使ってセルフホストできる、単体のDockerイメージをビルドできます。

ユースケース

  • クラウドインフラの設定を手作業で書かずに、TypeScriptまたはGoで新しいバックエンドサービスを構築する。
  • AIコーディングエージェントに、実際のインフラを使って変更を検証できるローカル環境を用意する。
  • 既存システムにEncoreで構築したサービスを追加し、サービスを一つずつ移行する。
  • アプリケーションのデータとインフラを、自社の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 とは?
データベース、Pub/Sub、バケット、キャッシュ、cronジョブをコードで宣言できるオープンソースのTypeScript・Go向けバックエンドフレームワーク。ローカルで実行し、AWSまたはGCPの自分のアカウントにデプロイできます。 Encoreは、TypeScriptとGoのバックエンド向けインフラSDKです。SQLデータベース、Pub/Subトピック、オブジェクトストレージのバケット、キャッシュ、cronジョブ、シークレットなどのリソースを、アプリケーションコード内で直接宣言します。`encore run`を実行すると、実際のPostgresを使ってアプリケーション全体がローカルで起動し、分散トレースを表示するダッシュボードも利用できます。デプロイ時には、同じ宣言に基づいてRDS、Cloud SQL、S3、GCSなどのリソースがプロビジョニングされます。
encore は無料で使えますか?ライセンスは?
encore は MPL-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
encore は今もメンテナンスされていますか?
活発にメンテナンス中。encore の最終コミットは 2026年10月19日 です。
encore は何に使えますか?
クラウドインフラの設定を手作業で書かずに、TypeScriptまたはGoで新しいバックエンドサービスを構築する。 AIコーディングエージェントに、実際のインフラを使って変更を検証できるローカル環境を用意する。 既存システムにEncoreで構築したサービスを追加し、サービスを一つずつ移行する。 アプリケーションのデータとインフラを、自社のAWSまたはGCPアカウント内に保持したいチーム。
encore のインストール方法は?
プロジェクトをスキャフォールディングする: encore app create プロジェクトフォルダーに移動する: cd myapp インフラと開発用ダッシュボードを使ってローカルで実行する: encore run
encore はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/encoredev/encore

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト