- Svelte
- SvelteKit
- TailwindCSS
- DaisyUI
- Hono
- Cloudflare Pages + Functions
-
Simple
- フロントエンドとバックエンドが同じドメインで動きます
-
Extensible
- 拡張が簡単です
-
Swappable
- 必要ないライブラリは他のライブラリに置き換えたり、完全にアンインストールすることができます
-
Full-stack Type Safety
hono/client
で RPC 風の型安全性を持ちます
(インストール)
- Bun >= v1.2
(実行)
bun install --frozen-lockfile
bun dev
Vite サーバーが :3000 で起動します。
curl localhost:3000/api/hello # -> {"message": "You've hello'ed 0 time(s)", "count": 0}
curl -X POST localhost:3000/api/hello # -> {"message": "That's your first hello", "count": 1}
curl -X POST localhost:3000/api/hello # -> {"message": "That's your second hello", "count": 2}
curl localhost:3000/api/hello # -> {"message": "You've hello'ed 2 time(s)", "count": 2}
Access http://localhost:3000
bun run build
bun run preview
- アカウントに入る
- サイドバー中間らへんにある Workers & Pages を開く
- Create を選択し、Pages のタブに切り替える
- Connect to Git -> GitHub -> リポジトリを選択する
- 環境変数に
BUN_VERSION
を設定する (これがないと cloudflare が勝手にnpm install
を実行しようとする) - ビルドコマンドは
bun install:production && bun run build
にする - デプロイディレクトリは
web/.svelte-kit/cloudflare
に設定する - ビルドを待つ
- アクセスする
Cloudflare 用に設定していますが、 SvelteKit のアダプタが用意されていて Hono が動く環境ならどこでもデプロイ可能です。
Cloudflare 以外にデプロイする場合は web/svelte.config.js
を変更してください。
- Cloudflare Worker / Pages Function 上では
process
APIにアクセスできないので、 Hono の Env ヘルパーを使いましょう。