Bun
Bun は、バンドラー、テストランナー、Node.js 互換のパッケージマネージャーを含む、スピードを重視したオールインワンの JavaScript 実行環境とツールキットです。
Zeabur を使えば、簡単に Bun アプリをデプロイできます。
クイックスタート
Bun アプリを作成
以下のコマンドを使用して、Bun アプリを初期化できます:
mkdir bun-app
 
cd bun-app
 
bun initHTTP サーバーを作成
index.ts を開き、以下のコードスニペットを貼り付けてください。このコードは、Bun.serve を使用して簡単な HTTP サーバーを実装します。
Zeabur が提供する環境変数 PORT を正しくリッスンできるように、serve 関数内の port を Bun.env.PORT に変更することを忘れないでください。
const server = Bun.serve({
  port: Bun.env.PORT ?? 3000, // ポートを Bun.env.PORT に変更
  fetch() {
    return new Response("Bun on Zeabur!");
  },
});
 
console.log(`Listening on http://localhost:${server.port} ...`);さらに、package.json ファイルでエントリーポイントを指定する必要があります。
現在 Zeabur は、エントリーポイントとして以下の拡張子をサポートしています:.js、.ts、.tsx、.jsx、.mjs、.mts、.cjs、.cts。
{
  "name": "bun-app",
  "module": "index.ts", // Zeabur に開始位置を知らせる
  "type": "module",
  // ...
}アプリの認識
Zeabur はアプリケーションを自動的に Bun アプリとして認識します。プロジェクトのルートディレクトリに bun.lockb ファイルが存在することを確認してください。
root
├── bun.lockb
├── index.ts
└── package.jsonbun.lockb ファイルをリポジトリにコミットしたくない場合は、bun-types をプロジェクトにインストールすることができます。
{
  "devDependencies": {
    "bun-types": "latest"
  }
}Bun バージョンを指定
デフォルトでは、Zeabur は 最新の安定版 の Bun を使用します。
package.json ファイルの engines.bun フィールドを使用して、Bun 実行環境のバージョンを指定できます。
{
  "engines": {
    "bun": "1.1.38"
  }
}また、Semver 形式を使用してバージョン範囲を指定することもできます。
{
  "engines": {
    "bun": "^1.1.38"
  }
}デプロイ
Git ボタンをクリックしてください。
Bun アプリのリポジトリを検索し、インポートをクリックすると、Bun アプリのデプロイが開始されます。

エコシステム
Bun は強力なエコシステムを備えており、Astro、Nuxt、SvelteKit、ElysiaJS などのさまざまなフレームワークを使用してアプリケーションを構築できます。
これらのアプリケーションをデプロイし、Bun を実行環境またはパッケージマネージャーとして使用することができます。
Bun - エコシステム についてさらに詳しく学びましょう。