Cloudflare Pages (Next.js) と Cloudflare D1を使ったアプリを作ろうとして諦めた

今日の日記。

CloudflareにはKVやD1など気になるサービスがいろいろある。

特にD1はsqliteをベースにしたエッジデータベースで、簡単にマルチマスター構成を組めCloudflare Workersと連携できるということでかなり気になっていた。

(ちなみにCloudflareが開発しているHonoにもかなり期待している。今後フルスタック運用も主流になってNext.jsを食うのだろうか?)

個人開発で適当なアプリに使えたら嬉しいし、とりあえず触り慣れたNext.jsからKVやD1を操作してみようと思った。

が、やめた。

連携自体は問題がなかったが、開発環境がネックだった。

KVやD1をアプリケーションにバインディングするためには、`next dev`が使えない。環境変数がバインドされないようだ。

プレビューには`wrangler pages dev`コマンドを使うのだが、いちいちコードの変更のたびにビルドする必要があり、そのたびに数秒待つ羽目になる。とてもじゃないが、無理だ。

モックを噛ませればいいのかもしれないが、簡単に導入できるものでもない。

まだD1はβ版だし、今後ホットロードが使えるようになるのも時間の問題だと思うので待ったほうがいいんだろう。