Open3
Cloudflare Workers に frontend frameworks が deploy できるってどういうこと?
ピン留めされたアイテム
vite の plugin で何かを頑張って変換しているわけではなく、Cloudflare Pages で Remix を deploy する構成を引き続き使いつつ、それを Cloudflare Workers 向けに build しなおしているっぽい。
個人的には Cloudflare Workers に乗っかるということで Cloudflare Cron Trigger や Cloudflare Queue が定義できるようになって monorepo 構成から脱却できると思ったがまだ難しそう。
wrangler pages function build
に関する build script はここにあるので時間があるときに詳しく見て行こうと思う。
Next.js やら Remix やらいろいろ Cloudflare Workers deploy できるようになった。
さらに Cloudflare Pages だけの機能だった preview deploy も Workers に来たので Pages でできなかったことができるようになったかどうかを見ていく
一番わかりやすそうな Remix から見ていく。
build
コマンドには remix vite:build && wrangler pages functions build --outdir build/worker
が刺さっていた。
vite.config.ts は以下。ぱっと見 vite の plugin で何かを頑張っているわけではなさそうなので、build
コマンドに刺さっている wrangler pages functions build --outdir build/worker
がキモっぽい。
import {
vitePlugin as remix,
cloudflareDevProxyVitePlugin as remixCloudflareDevProxy,
} from "@remix-run/dev";
import { defineConfig } from "vite";
import tsconfigPaths from "vite-tsconfig-paths";
export default defineConfig({
plugins: [
remixCloudflareDevProxy(),
remix({
future: {
v3_fetcherPersist: true,
v3_relativeSplatPath: true,
v3_throwAbortReason: true,
},
}),
tsconfigPaths(),
],
});