Platforms
Bun
Bun サンプルを開発モードで動かし、ビルドして本番サーバーの起動を確認します。
サンプルを起動する
最新の Node.js LTS と Vite+ をインストールします。 本番サーバー用に最新の Bun もインストールします。 Vite の開発サーバーは Node.js を使うため、両方のランタイムを用意してください。
vp create effront -- my-app --platform bun
cd my-app
vp install
vp devVite が表示するローカル URL を開きます。一画面に Hello, world と表示されます。
アプリケーションとサーバーのファイルを確認する
サンプルにはホストの設定が揃っています。
| ファイル | 役割 |
|---|---|
src/entry.effront.tsx | HTML レイアウト、一つのページ、/ ルートを定義します。 |
src/entry.rsc.ts | アプリケーションの HTTP handler をエクスポートします。 |
src/entry.server.ts | @effront/server/bun と BunRuntime.runMain で Bun のリスナーを起動します。 |
vite.config.ts | effront() と effrontServer() を登録します。 |
package.json | 依存パッケージと start コマンドを定義します。 |
src/entry.effront.tsx の <h1>Hello, world</h1> を <h1>Hello, Effront!</h1> に変えて保存します。サーバーを再起動せずに表示が更新されます。
本番ビルドをローカルで確認する
開発サーバーを停止し、生成したプロジェクトで次を実行します。
vp buildビルドすると、サーバーの起動ファイルは dist/rsc/server.js、生成されたブラウザー用アセットは dist/client/assets に出力されます。
src/entry.server.ts は生成アセットを /assets/ 以下で配信します。
Bun サーバーを起動する
ビルド後、examples/bun で次を実行します。
vp run startこのスクリプトは bun dist/rsc/server.js を実行します。
PORT と HOST が未設定なら、http://127.0.0.1:3000 を開きます。
待ち受けアドレスを変更する場合は、起動前に PORT と HOST を設定してください。
最小構成は本番で @effect/platform-bun を、開発時に @effect/platform-node を使います。
リスナーとアセットのオプションは サーバー API リファレンス を参照してください。 Node.js を使う場合は、別の Node.js サンプルを参照してください。