From 02739178704c76c81993fd712a71afa1fd90721b Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 12:08:54 -0500 Subject: [PATCH 01/21] ci: use Cloudflare worker github action --- .env | 2 - .github/workflows/deploy.yml | 28 ++ .gitignore | 8 +- functions/echo.js | 4 + package.json | 3 +- yarn.lock | 889 ++++++++++++++++++++++++++++++++++- 6 files changed, 921 insertions(+), 13 deletions(-) delete mode 100644 .env create mode 100644 .github/workflows/deploy.yml create mode 100644 functions/echo.js diff --git a/.env b/.env deleted file mode 100644 index 14e36c5ec..000000000 --- a/.env +++ /dev/null @@ -1,2 +0,0 @@ -VITE_VERSION_LATEST="v11.0.0" -VITE_VERSION_NEXT="v12.0.0" \ No newline at end of file diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 000000000..014dd3d7f --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,28 @@ +on: [push] + +jobs: + deploy: + runs-on: ubuntu-latest + name: Deploy + permissions: + contents: read + deployments: write + steps: + - uses: actions/checkout@v4 + - name: Setup yarn + uses: actions/setup-node@v3 + with: + cache: 'yarn' + node-version: '24' + - name: Build + run: | + yarn install + yarn build + - name: Deploy + uses: cloudflare/wrangler-action@v3 + with: + apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} + accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + command: pages deploy public --project-name=rescript-lang.org + # Optional: Enable this if you want to have GitHub Deployments triggered + gitHubToken: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 00839d997..d879ed0ad 100644 --- a/.gitignore +++ b/.gitignore @@ -57,5 +57,11 @@ app/**/*.jsx !.yarn/sdks !.yarn/versions +# wrangler +.wrangler + # Scripts generated from rolldown to convert them from .jsx files to .mjs files -_scripts \ No newline at end of file +_scripts + +# Local env files +.env \ No newline at end of file diff --git a/functions/echo.js b/functions/echo.js new file mode 100644 index 000000000..47c57eaa6 --- /dev/null +++ b/functions/echo.js @@ -0,0 +1,4 @@ +export function onRequest(context) { + const url = new URL(context.request.url); + return new Response(url.searchParams.toString()); +} \ No newline at end of file diff --git a/package.json b/package.json index eb74f1281..4b142abd8 100644 --- a/package.json +++ b/package.json @@ -93,6 +93,7 @@ "vite": "^7.0.6", "vite-plugin-devtools-json": "^1.0.0", "vite-plugin-env-compatible": "^2.0.1", - "vite-plugin-page-reload": "^0.2.2" + "vite-plugin-page-reload": "^0.2.2", + "wrangler": "^4.52.0" } } \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 3f92ea049..bbef93371 100644 --- a/yarn.lock +++ b/yarn.lock @@ -592,6 +592,63 @@ __metadata: languageName: node linkType: hard +"@cloudflare/kv-asset-handler@npm:0.4.1": + version: 0.4.1 + resolution: "@cloudflare/kv-asset-handler@npm:0.4.1" + dependencies: + mime: "npm:^3.0.0" + checksum: 10c0/b2b956388040ee4b93c8f52892a559e9ab77c6c7821ab211328c5a88cdb6097d48b1a96ff73084e97f13d6087cafee9f1724e047ce577499f0432a7131da94c9 + languageName: node + linkType: hard + +"@cloudflare/unenv-preset@npm:2.7.12": + version: 2.7.12 + resolution: "@cloudflare/unenv-preset@npm:2.7.12" + peerDependencies: + unenv: 2.0.0-rc.24 + workerd: ^1.20251125.0 + peerDependenciesMeta: + workerd: + optional: true + checksum: 10c0/1d616b3ea72ac98f7144e41dea2c17b2f44c0c4f99a3cb43c1a422b4a00a7d7c6a0f0f056351d40c87c62053add9be95accd49661a68fc98857dd9f00997a032 + languageName: node + linkType: hard + +"@cloudflare/workerd-darwin-64@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "@cloudflare/workerd-darwin-64@npm:1.20251128.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@cloudflare/workerd-darwin-arm64@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "@cloudflare/workerd-darwin-arm64@npm:1.20251128.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@cloudflare/workerd-linux-64@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "@cloudflare/workerd-linux-64@npm:1.20251128.0" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@cloudflare/workerd-linux-arm64@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "@cloudflare/workerd-linux-arm64@npm:1.20251128.0" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@cloudflare/workerd-windows-64@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "@cloudflare/workerd-windows-64@npm:1.20251128.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@codemirror/autocomplete@npm:^6.0.0": version: 6.20.0 resolution: "@codemirror/autocomplete@npm:6.20.0" @@ -695,6 +752,15 @@ __metadata: languageName: node linkType: hard +"@cspotcode/source-map-support@npm:0.8.1": + version: 0.8.1 + resolution: "@cspotcode/source-map-support@npm:0.8.1" + dependencies: + "@jridgewell/trace-mapping": "npm:0.3.9" + checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6 + languageName: node + linkType: hard + "@csstools/color-helpers@npm:^5.1.0": version: 5.1.0 resolution: "@csstools/color-helpers@npm:5.1.0" @@ -806,7 +872,7 @@ __metadata: languageName: node linkType: hard -"@emnapi/runtime@npm:^1.4.3, @emnapi/runtime@npm:^1.5.0, @emnapi/runtime@npm:^1.6.0, @emnapi/runtime@npm:^1.7.0": +"@emnapi/runtime@npm:^1.2.0, @emnapi/runtime@npm:^1.4.3, @emnapi/runtime@npm:^1.5.0, @emnapi/runtime@npm:^1.6.0, @emnapi/runtime@npm:^1.7.0": version: 1.7.1 resolution: "@emnapi/runtime@npm:1.7.1" dependencies: @@ -831,6 +897,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/aix-ppc64@npm:0.27.0" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/android-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/android-arm64@npm:0.25.12" @@ -838,6 +911,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/android-arm64@npm:0.27.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/android-arm@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/android-arm@npm:0.25.12" @@ -845,6 +925,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/android-arm@npm:0.27.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@esbuild/android-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/android-x64@npm:0.25.12" @@ -852,6 +939,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/android-x64@npm:0.27.0" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + "@esbuild/darwin-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/darwin-arm64@npm:0.25.12" @@ -859,6 +953,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/darwin-arm64@npm:0.27.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/darwin-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/darwin-x64@npm:0.25.12" @@ -866,6 +967,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/darwin-x64@npm:0.27.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@esbuild/freebsd-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/freebsd-arm64@npm:0.25.12" @@ -873,6 +981,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/freebsd-arm64@npm:0.27.0" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/freebsd-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/freebsd-x64@npm:0.25.12" @@ -880,6 +995,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/freebsd-x64@npm:0.27.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/linux-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-arm64@npm:0.25.12" @@ -887,6 +1009,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-arm64@npm:0.27.0" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/linux-arm@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-arm@npm:0.25.12" @@ -894,6 +1023,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-arm@npm:0.27.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@esbuild/linux-ia32@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-ia32@npm:0.25.12" @@ -901,6 +1037,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ia32@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-ia32@npm:0.27.0" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/linux-loong64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-loong64@npm:0.25.12" @@ -908,6 +1051,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-loong64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-loong64@npm:0.27.0" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + "@esbuild/linux-mips64el@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-mips64el@npm:0.25.12" @@ -915,6 +1065,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-mips64el@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-mips64el@npm:0.27.0" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + "@esbuild/linux-ppc64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-ppc64@npm:0.25.12" @@ -922,6 +1079,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ppc64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-ppc64@npm:0.27.0" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/linux-riscv64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-riscv64@npm:0.25.12" @@ -929,6 +1093,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-riscv64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-riscv64@npm:0.27.0" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + "@esbuild/linux-s390x@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-s390x@npm:0.25.12" @@ -936,6 +1107,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-s390x@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-s390x@npm:0.27.0" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + "@esbuild/linux-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/linux-x64@npm:0.25.12" @@ -943,6 +1121,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/linux-x64@npm:0.27.0" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@esbuild/netbsd-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/netbsd-arm64@npm:0.25.12" @@ -950,6 +1135,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/netbsd-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/netbsd-arm64@npm:0.27.0" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/netbsd-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/netbsd-x64@npm:0.25.12" @@ -957,6 +1149,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/netbsd-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/netbsd-x64@npm:0.27.0" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/openbsd-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/openbsd-arm64@npm:0.25.12" @@ -964,6 +1163,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/openbsd-arm64@npm:0.27.0" + conditions: os=openbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/openbsd-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/openbsd-x64@npm:0.25.12" @@ -971,6 +1177,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/openbsd-x64@npm:0.27.0" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/openharmony-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/openharmony-arm64@npm:0.25.12" @@ -978,6 +1191,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openharmony-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/openharmony-arm64@npm:0.27.0" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/sunos-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/sunos-x64@npm:0.25.12" @@ -985,6 +1205,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/sunos-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/sunos-x64@npm:0.27.0" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + "@esbuild/win32-arm64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/win32-arm64@npm:0.25.12" @@ -992,6 +1219,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-arm64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/win32-arm64@npm:0.27.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/win32-ia32@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/win32-ia32@npm:0.25.12" @@ -999,6 +1233,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-ia32@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/win32-ia32@npm:0.27.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/win32-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/win32-x64@npm:0.25.12" @@ -1006,6 +1247,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-x64@npm:0.27.0": + version: 0.27.0 + resolution: "@esbuild/win32-x64@npm:0.27.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@fastify/accept-negotiator@npm:^2.0.0": version: 2.0.1 resolution: "@fastify/accept-negotiator@npm:2.0.1" @@ -1205,6 +1453,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-darwin-arm64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-darwin-arm64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-darwin-arm64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-darwin-arm64": + optional: true + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@img/sharp-darwin-arm64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-darwin-arm64@npm:0.34.5" @@ -1217,6 +1477,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-darwin-x64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-darwin-x64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-darwin-x64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-darwin-x64": + optional: true + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@img/sharp-darwin-x64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-darwin-x64@npm:0.34.5" @@ -1229,6 +1501,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-darwin-arm64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-darwin-arm64@npm:1.0.4" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@img/sharp-libvips-darwin-arm64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-darwin-arm64@npm:1.2.4" @@ -1236,6 +1515,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-darwin-x64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-darwin-x64@npm:1.0.4" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@img/sharp-libvips-darwin-x64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-darwin-x64@npm:1.2.4" @@ -1243,6 +1529,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linux-arm64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-linux-arm64@npm:1.0.4" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@img/sharp-libvips-linux-arm64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linux-arm64@npm:1.2.4" @@ -1250,6 +1543,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linux-arm@npm:1.0.5": + version: 1.0.5 + resolution: "@img/sharp-libvips-linux-arm@npm:1.0.5" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + "@img/sharp-libvips-linux-arm@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linux-arm@npm:1.2.4" @@ -1271,6 +1571,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linux-s390x@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-linux-s390x@npm:1.0.4" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + "@img/sharp-libvips-linux-s390x@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linux-s390x@npm:1.2.4" @@ -1278,6 +1585,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linux-x64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-linux-x64@npm:1.0.4" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@img/sharp-libvips-linux-x64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linux-x64@npm:1.2.4" @@ -1285,6 +1599,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linuxmusl-arm64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-linuxmusl-arm64@npm:1.0.4" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@img/sharp-libvips-linuxmusl-arm64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linuxmusl-arm64@npm:1.2.4" @@ -1292,6 +1613,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-libvips-linuxmusl-x64@npm:1.0.4": + version: 1.0.4 + resolution: "@img/sharp-libvips-linuxmusl-x64@npm:1.0.4" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@img/sharp-libvips-linuxmusl-x64@npm:1.2.4": version: 1.2.4 resolution: "@img/sharp-libvips-linuxmusl-x64@npm:1.2.4" @@ -1299,6 +1627,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-linux-arm64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linux-arm64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linux-arm64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-linux-arm64": + optional: true + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@img/sharp-linux-arm64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-linux-arm64@npm:0.34.5" @@ -1311,6 +1651,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-linux-arm@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linux-arm@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linux-arm": "npm:1.0.5" + dependenciesMeta: + "@img/sharp-libvips-linux-arm": + optional: true + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + "@img/sharp-linux-arm@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-linux-arm@npm:0.34.5" @@ -1347,6 +1699,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-linux-s390x@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linux-s390x@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linux-s390x": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-linux-s390x": + optional: true + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + "@img/sharp-linux-s390x@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-linux-s390x@npm:0.34.5" @@ -1359,6 +1723,18 @@ __metadata: languageName: node linkType: hard +"@img/sharp-linux-x64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linux-x64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linux-x64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-linux-x64": + optional: true + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@img/sharp-linux-x64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-linux-x64@npm:0.34.5" @@ -1371,15 +1747,39 @@ __metadata: languageName: node linkType: hard +"@img/sharp-linuxmusl-arm64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linuxmusl-arm64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linuxmusl-arm64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-linuxmusl-arm64": + optional: true + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + "@img/sharp-linuxmusl-arm64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-linuxmusl-arm64@npm:0.34.5" dependencies: "@img/sharp-libvips-linuxmusl-arm64": "npm:1.2.4" dependenciesMeta: - "@img/sharp-libvips-linuxmusl-arm64": + "@img/sharp-libvips-linuxmusl-arm64": + optional: true + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@img/sharp-linuxmusl-x64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-linuxmusl-x64@npm:0.33.5" + dependencies: + "@img/sharp-libvips-linuxmusl-x64": "npm:1.0.4" + dependenciesMeta: + "@img/sharp-libvips-linuxmusl-x64": optional: true - conditions: os=linux & cpu=arm64 & libc=musl + conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard @@ -1395,6 +1795,15 @@ __metadata: languageName: node linkType: hard +"@img/sharp-wasm32@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-wasm32@npm:0.33.5" + dependencies: + "@emnapi/runtime": "npm:^1.2.0" + conditions: cpu=wasm32 + languageName: node + linkType: hard + "@img/sharp-wasm32@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-wasm32@npm:0.34.5" @@ -1411,6 +1820,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-win32-ia32@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-win32-ia32@npm:0.33.5" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@img/sharp-win32-ia32@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-win32-ia32@npm:0.34.5" @@ -1418,6 +1834,13 @@ __metadata: languageName: node linkType: hard +"@img/sharp-win32-x64@npm:0.33.5": + version: 0.33.5 + resolution: "@img/sharp-win32-x64@npm:0.33.5" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@img/sharp-win32-x64@npm:0.34.5": version: 0.34.5 resolution: "@img/sharp-win32-x64@npm:0.34.5" @@ -1484,20 +1907,30 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.1.0": +"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": version: 3.1.2 resolution: "@jridgewell/resolve-uri@npm:3.1.2" checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5": version: 1.5.5 resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:0.3.9": + version: 0.3.9 + resolution: "@jridgewell/trace-mapping@npm:0.3.9" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.0.3" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b + languageName: node + linkType: hard + "@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.28": version: 0.3.31 resolution: "@jridgewell/trace-mapping@npm:0.3.31" @@ -1988,6 +2421,33 @@ __metadata: languageName: node linkType: hard +"@poppinss/colors@npm:^4.1.5": + version: 4.1.5 + resolution: "@poppinss/colors@npm:4.1.5" + dependencies: + kleur: "npm:^4.1.5" + checksum: 10c0/e9d5c9e9a8c1eb7cd37e9b431bda7b7573476be7395123b26815d758f38ca93db0ba62bb2831281f4f04a6e1620b4d4f9377268d32c61c2c9f6599a02c2112b7 + languageName: node + linkType: hard + +"@poppinss/dumper@npm:^0.6.4": + version: 0.6.5 + resolution: "@poppinss/dumper@npm:0.6.5" + dependencies: + "@poppinss/colors": "npm:^4.1.5" + "@sindresorhus/is": "npm:^7.0.2" + supports-color: "npm:^10.0.0" + checksum: 10c0/7a0916fe4ce543cac1e61f09218e5c88b903ad0d853301b790686c772b7f5c595a04beccbf13172e0c77dc64b132b27ad438b888816fd7f6128c816290f9dc1f + languageName: node + linkType: hard + +"@poppinss/exception@npm:^1.2.2": + version: 1.2.2 + resolution: "@poppinss/exception@npm:1.2.2" + checksum: 10c0/b14d1e3d532230f58238231fce6ba3bf51dab50d4ec015f3192f04320be1d692eadd831a8d437e2fc345787c96350104149fd9920264362bca143d04ec03bc4e + languageName: node + linkType: hard + "@prettier/plugin-oxc@npm:^0.0.4": version: 0.0.4 resolution: "@prettier/plugin-oxc@npm:0.0.4" @@ -2397,6 +2857,20 @@ __metadata: languageName: node linkType: hard +"@sindresorhus/is@npm:^7.0.2": + version: 7.1.1 + resolution: "@sindresorhus/is@npm:7.1.1" + checksum: 10c0/96f021b8c5680e0687ceba5619c2e56fe6b089b190b3149280a1e418e6315c66839e3f1519cf1c89f7a888b5a0017a0ef1db17436d783ee398b7d5a515caa3ef + languageName: node + linkType: hard + +"@speed-highlight/core@npm:^1.2.7": + version: 1.2.12 + resolution: "@speed-highlight/core@npm:1.2.12" + checksum: 10c0/37613c7a031af3b239282cc09211cefc1c9e164df07110520d2116ae7b4741512c1905bf1e011706ee2e652cef24df834f2068c4c4fff71e0257ec22fa655ff2 + languageName: node + linkType: hard + "@standard-schema/spec@npm:^1.0.0": version: 1.0.0 resolution: "@standard-schema/spec@npm:1.0.0" @@ -2889,6 +3363,22 @@ __metadata: languageName: node linkType: hard +"acorn-walk@npm:8.3.2": + version: 8.3.2 + resolution: "acorn-walk@npm:8.3.2" + checksum: 10c0/7e2a8dad5480df7f872569b9dccff2f3da7e65f5353686b1d6032ab9f4ddf6e3a2cb83a9b52cf50b1497fd522154dda92f0abf7153290cc79cd14721ff121e52 + languageName: node + linkType: hard + +"acorn@npm:8.14.0": + version: 8.14.0 + resolution: "acorn@npm:8.14.0" + bin: + acorn: bin/acorn + checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7 + languageName: node + linkType: hard + "acorn@npm:^8.0.0": version: 8.15.0 resolution: "acorn@npm:8.15.0" @@ -3191,6 +3681,13 @@ __metadata: languageName: node linkType: hard +"blake3-wasm@npm:2.1.5": + version: 2.1.5 + resolution: "blake3-wasm@npm:2.1.5" + checksum: 10c0/5dc729d8e3a9d1d7ab016b36cdda264a327ada0239716df48435163e11d2bf6df25d6e421655a1f52649098ae49555268a654729b7d02768f77c571ab37ef814 + languageName: node + linkType: hard + "body-parser@npm:1.20.3": version: 1.20.3 resolution: "body-parser@npm:1.20.3" @@ -3525,13 +4022,33 @@ __metadata: languageName: node linkType: hard -"color-name@npm:~1.1.4": +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 languageName: node linkType: hard +"color-string@npm:^1.9.0": + version: 1.9.1 + resolution: "color-string@npm:1.9.1" + dependencies: + color-name: "npm:^1.0.0" + simple-swizzle: "npm:^0.2.2" + checksum: 10c0/b0bfd74c03b1f837f543898b512f5ea353f71630ccdd0d66f83028d1f0924a7d4272deb278b9aef376cacf1289b522ac3fb175e99895283645a2dc3a33af2404 + languageName: node + linkType: hard + +"color@npm:^4.2.3": + version: 4.2.3 + resolution: "color@npm:4.2.3" + dependencies: + color-convert: "npm:^2.0.1" + color-string: "npm:^1.9.0" + checksum: 10c0/7fbe7cfb811054c808349de19fb380252e5e34e61d7d168ec3353e9e9aacb1802674bddc657682e4e9730c2786592a4de6f8283e7e0d3870b829bb0b7b2f6118 + languageName: node + linkType: hard + "colorette@npm:^2.0.7": version: 2.0.20 resolution: "colorette@npm:2.0.20" @@ -3623,6 +4140,13 @@ __metadata: languageName: node linkType: hard +"cookie@npm:^1.0.2": + version: 1.1.1 + resolution: "cookie@npm:1.1.1" + checksum: 10c0/79c4ddc0fcad9c4f045f826f42edf54bcc921a29586a4558b0898277fa89fb47be95bc384c2253f493af7b29500c830da28341274527328f18eba9f58afa112c + languageName: node + linkType: hard + "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" @@ -4055,6 +4579,13 @@ __metadata: languageName: node linkType: hard +"error-stack-parser-es@npm:^1.0.5": + version: 1.0.5 + resolution: "error-stack-parser-es@npm:1.0.5" + checksum: 10c0/040665eb87a42fe068c0da501bc258f3d15d3a03963c0723d7a2741e251d400c9776a52d2803afdc5709def99554cdb5a5d99c203c7eaf4885d3fbc217e2e8f7 + languageName: node + linkType: hard + "es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.9": version: 1.24.0 resolution: "es-abstract@npm:1.24.0" @@ -4194,6 +4725,95 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:0.27.0": + version: 0.27.0 + resolution: "esbuild@npm:0.27.0" + dependencies: + "@esbuild/aix-ppc64": "npm:0.27.0" + "@esbuild/android-arm": "npm:0.27.0" + "@esbuild/android-arm64": "npm:0.27.0" + "@esbuild/android-x64": "npm:0.27.0" + "@esbuild/darwin-arm64": "npm:0.27.0" + "@esbuild/darwin-x64": "npm:0.27.0" + "@esbuild/freebsd-arm64": "npm:0.27.0" + "@esbuild/freebsd-x64": "npm:0.27.0" + "@esbuild/linux-arm": "npm:0.27.0" + "@esbuild/linux-arm64": "npm:0.27.0" + "@esbuild/linux-ia32": "npm:0.27.0" + "@esbuild/linux-loong64": "npm:0.27.0" + "@esbuild/linux-mips64el": "npm:0.27.0" + "@esbuild/linux-ppc64": "npm:0.27.0" + "@esbuild/linux-riscv64": "npm:0.27.0" + "@esbuild/linux-s390x": "npm:0.27.0" + "@esbuild/linux-x64": "npm:0.27.0" + "@esbuild/netbsd-arm64": "npm:0.27.0" + "@esbuild/netbsd-x64": "npm:0.27.0" + "@esbuild/openbsd-arm64": "npm:0.27.0" + "@esbuild/openbsd-x64": "npm:0.27.0" + "@esbuild/openharmony-arm64": "npm:0.27.0" + "@esbuild/sunos-x64": "npm:0.27.0" + "@esbuild/win32-arm64": "npm:0.27.0" + "@esbuild/win32-ia32": "npm:0.27.0" + "@esbuild/win32-x64": "npm:0.27.0" + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-arm64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-arm64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/openharmony-arm64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 10c0/a3a1deec285337b7dfe25cbb9aa8765d27a0192b610a8477a39bf5bd907a6bdb75e98898b61fb4337114cfadb13163bd95977db14e241373115f548e235b40a2 + languageName: node + linkType: hard + "esbuild@npm:^0.25.0": version: 0.25.12 resolution: "esbuild@npm:0.25.12" @@ -4852,6 +5472,13 @@ __metadata: languageName: node linkType: hard +"glob-to-regexp@npm:0.4.1": + version: 0.4.1 + resolution: "glob-to-regexp@npm:0.4.1" + checksum: 10c0/0486925072d7a916f052842772b61c3e86247f0a80cc0deb9b5a3e8a1a9faad5b04fb6f58986a09f34d3e96cd2a22a24b7e9882fb1cf904c31e9a310de96c429 + languageName: node + linkType: hard + "glob@npm:^10.0.0, glob@npm:^10.2.2": version: 10.5.0 resolution: "glob@npm:10.5.0" @@ -5384,6 +6011,13 @@ __metadata: languageName: node linkType: hard +"is-arrayish@npm:^0.3.1": + version: 0.3.4 + resolution: "is-arrayish@npm:0.3.4" + checksum: 10c0/1fa672a2f0bedb74154440310f616c0b6e53a95cf0625522ae050f06626d1cabd1a3d8085c882dc45c61ad0e7df2529aff122810b3b4a552880bf170d6df94e0 + languageName: node + linkType: hard + "is-async-function@npm:^2.0.0": version: 2.1.1 resolution: "is-async-function@npm:2.1.1" @@ -5944,7 +6578,7 @@ __metadata: languageName: node linkType: hard -"kleur@npm:4.1.5": +"kleur@npm:4.1.5, kleur@npm:^4.1.5": version: 4.1.5 resolution: "kleur@npm:4.1.5" checksum: 10c0/e9de6cb49657b6fa70ba2d1448fd3d691a5c4370d8f7bbf1c2f64c24d461270f2117e1b0afe8cb3114f13bbd8e51de158c2a224953960331904e636a5e4c0f2a @@ -7073,7 +7707,7 @@ __metadata: languageName: node linkType: hard -"mime@npm:^3": +"mime@npm:^3, mime@npm:^3.0.0": version: 3.0.0 resolution: "mime@npm:3.0.0" bin: @@ -7089,6 +7723,28 @@ __metadata: languageName: node linkType: hard +"miniflare@npm:4.20251128.0": + version: 4.20251128.0 + resolution: "miniflare@npm:4.20251128.0" + dependencies: + "@cspotcode/source-map-support": "npm:0.8.1" + acorn: "npm:8.14.0" + acorn-walk: "npm:8.3.2" + exit-hook: "npm:2.2.1" + glob-to-regexp: "npm:0.4.1" + sharp: "npm:^0.33.5" + stoppable: "npm:1.1.0" + undici: "npm:7.14.0" + workerd: "npm:1.20251128.0" + ws: "npm:8.18.0" + youch: "npm:4.1.0-beta.10" + zod: "npm:3.22.3" + bin: + miniflare: bootstrap.js + checksum: 10c0/4a9e1292531017efb93aa1ade4f2962aa91a2d74eaf6e7a49b3569e97db0f64efb56cdad84726a4e01e589a0a58c7a25480b376424e0f3e56c34a42bc128fbf1 + languageName: node + linkType: hard + "minimatch@npm:^10.1.1": version: 10.1.1 resolution: "minimatch@npm:10.1.1" @@ -7649,6 +8305,13 @@ __metadata: languageName: node linkType: hard +"path-to-regexp@npm:6.3.0": + version: 6.3.0 + resolution: "path-to-regexp@npm:6.3.0" + checksum: 10c0/73b67f4638b41cde56254e6354e46ae3a2ebc08279583f6af3d96fe4664fc75788f74ed0d18ca44fa4a98491b69434f9eee73b97bb5314bd1b5adb700f5c18d6 + languageName: node + linkType: hard + "pathe@npm:^1.1.2": version: 1.1.2 resolution: "pathe@npm:1.1.2" @@ -8470,6 +9133,7 @@ __metadata: vite-plugin-devtools-json: "npm:^1.0.0" vite-plugin-env-compatible: "npm:^2.0.1" vite-plugin-page-reload: "npm:^0.2.2" + wrangler: "npm:^4.52.0" languageName: unknown linkType: soft @@ -8766,7 +9430,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.3, semver@npm:^7.6.0, semver@npm:^7.7.3": +"semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.3, semver@npm:^7.6.0, semver@npm:^7.6.3, semver@npm:^7.7.3": version: 7.7.3 resolution: "semver@npm:7.7.3" bin: @@ -8881,6 +9545,75 @@ __metadata: languageName: node linkType: hard +"sharp@npm:^0.33.5": + version: 0.33.5 + resolution: "sharp@npm:0.33.5" + dependencies: + "@img/sharp-darwin-arm64": "npm:0.33.5" + "@img/sharp-darwin-x64": "npm:0.33.5" + "@img/sharp-libvips-darwin-arm64": "npm:1.0.4" + "@img/sharp-libvips-darwin-x64": "npm:1.0.4" + "@img/sharp-libvips-linux-arm": "npm:1.0.5" + "@img/sharp-libvips-linux-arm64": "npm:1.0.4" + "@img/sharp-libvips-linux-s390x": "npm:1.0.4" + "@img/sharp-libvips-linux-x64": "npm:1.0.4" + "@img/sharp-libvips-linuxmusl-arm64": "npm:1.0.4" + "@img/sharp-libvips-linuxmusl-x64": "npm:1.0.4" + "@img/sharp-linux-arm": "npm:0.33.5" + "@img/sharp-linux-arm64": "npm:0.33.5" + "@img/sharp-linux-s390x": "npm:0.33.5" + "@img/sharp-linux-x64": "npm:0.33.5" + "@img/sharp-linuxmusl-arm64": "npm:0.33.5" + "@img/sharp-linuxmusl-x64": "npm:0.33.5" + "@img/sharp-wasm32": "npm:0.33.5" + "@img/sharp-win32-ia32": "npm:0.33.5" + "@img/sharp-win32-x64": "npm:0.33.5" + color: "npm:^4.2.3" + detect-libc: "npm:^2.0.3" + semver: "npm:^7.6.3" + dependenciesMeta: + "@img/sharp-darwin-arm64": + optional: true + "@img/sharp-darwin-x64": + optional: true + "@img/sharp-libvips-darwin-arm64": + optional: true + "@img/sharp-libvips-darwin-x64": + optional: true + "@img/sharp-libvips-linux-arm": + optional: true + "@img/sharp-libvips-linux-arm64": + optional: true + "@img/sharp-libvips-linux-s390x": + optional: true + "@img/sharp-libvips-linux-x64": + optional: true + "@img/sharp-libvips-linuxmusl-arm64": + optional: true + "@img/sharp-libvips-linuxmusl-x64": + optional: true + "@img/sharp-linux-arm": + optional: true + "@img/sharp-linux-arm64": + optional: true + "@img/sharp-linux-s390x": + optional: true + "@img/sharp-linux-x64": + optional: true + "@img/sharp-linuxmusl-arm64": + optional: true + "@img/sharp-linuxmusl-x64": + optional: true + "@img/sharp-wasm32": + optional: true + "@img/sharp-win32-ia32": + optional: true + "@img/sharp-win32-x64": + optional: true + checksum: 10c0/6b81421ddfe6ee524d8d77e325c5e147fef22884e1c7b1656dfd89a88d7025894115da02d5f984261bf2e6daa16f98cadd1721c4ba408b4212b1d2a60f233484 + languageName: node + linkType: hard + "sharp@npm:^0.34.4": version: 0.34.5 resolution: "sharp@npm:0.34.5" @@ -9036,6 +9769,15 @@ __metadata: languageName: node linkType: hard +"simple-swizzle@npm:^0.2.2": + version: 0.2.4 + resolution: "simple-swizzle@npm:0.2.4" + dependencies: + is-arrayish: "npm:^0.3.1" + checksum: 10c0/846c3fdd1325318d5c71295cfbb99bfc9edc4c8dffdda5e6e9efe30482bbcd32cf360fc2806f46ac43ff7d09bcfaff20337bb79f826f0e6a8e366efd3cdd7868 + languageName: node + linkType: hard + "slash@npm:^5.1.0": version: 5.1.0 resolution: "slash@npm:5.1.0" @@ -9203,6 +9945,13 @@ __metadata: languageName: node linkType: hard +"stoppable@npm:1.1.0": + version: 1.1.0 + resolution: "stoppable@npm:1.1.0" + checksum: 10c0/ba91b65e6442bf6f01ce837a727ece597a977ed92a05cb9aea6bf446c5e0dcbccc28f31b793afa8aedd8f34baaf3335398d35f903938d5493f7fbe386a1e090e + languageName: node + linkType: hard + "stream-shift@npm:^1.0.0, stream-shift@npm:^1.0.2": version: 1.0.3 resolution: "stream-shift@npm:1.0.3" @@ -9377,6 +10126,13 @@ __metadata: languageName: node linkType: hard +"supports-color@npm:^10.0.0": + version: 10.2.2 + resolution: "supports-color@npm:10.2.2" + checksum: 10c0/fb28dd7e0cdf80afb3f2a41df5e068d60c8b4f97f7140de2eaed5b42e075d82a0e980b20a2c0efd2b6d73cfacb55555285d8cc719fa0472220715aefeaa1da7c + languageName: node + linkType: hard + "supports-color@npm:^9.0.0": version: 9.4.0 resolution: "supports-color@npm:9.4.0" @@ -9724,6 +10480,22 @@ __metadata: languageName: node linkType: hard +"undici@npm:7.14.0": + version: 7.14.0 + resolution: "undici@npm:7.14.0" + checksum: 10c0/4beab6a5bfb89add9e90195aee6bc993708afbabad33bff7da791b5334a6e26a591c29938822d2fb8f69ae0ad8d580d64e03247b11157af9f820d5bd9f8f16e7 + languageName: node + linkType: hard + +"unenv@npm:2.0.0-rc.24": + version: 2.0.0-rc.24 + resolution: "unenv@npm:2.0.0-rc.24" + dependencies: + pathe: "npm:^2.0.3" + checksum: 10c0/e8556b4287fcf647f23db790eea2782cc79f182370718680e3aba4753d5fb7177abf5d6df489c8f74f7e3ad6cd554b8623cc01caf3e6f2d5548e69178adb1691 + languageName: node + linkType: hard + "unified-args@npm:^11.0.0": version: 11.0.1 resolution: "unified-args@npm:11.0.1" @@ -10318,6 +11090,60 @@ __metadata: languageName: node linkType: hard +"workerd@npm:1.20251128.0": + version: 1.20251128.0 + resolution: "workerd@npm:1.20251128.0" + dependencies: + "@cloudflare/workerd-darwin-64": "npm:1.20251128.0" + "@cloudflare/workerd-darwin-arm64": "npm:1.20251128.0" + "@cloudflare/workerd-linux-64": "npm:1.20251128.0" + "@cloudflare/workerd-linux-arm64": "npm:1.20251128.0" + "@cloudflare/workerd-windows-64": "npm:1.20251128.0" + dependenciesMeta: + "@cloudflare/workerd-darwin-64": + optional: true + "@cloudflare/workerd-darwin-arm64": + optional: true + "@cloudflare/workerd-linux-64": + optional: true + "@cloudflare/workerd-linux-arm64": + optional: true + "@cloudflare/workerd-windows-64": + optional: true + bin: + workerd: bin/workerd + checksum: 10c0/1f684aa45f28a9d403bca9fd100362420f9836f7608efc05cee6f212e01e139c68c40ecc75a84902b8cfe4bb0183c16ba263f806bc10d4d6e25071da5cb80f94 + languageName: node + linkType: hard + +"wrangler@npm:^4.52.0": + version: 4.52.0 + resolution: "wrangler@npm:4.52.0" + dependencies: + "@cloudflare/kv-asset-handler": "npm:0.4.1" + "@cloudflare/unenv-preset": "npm:2.7.12" + blake3-wasm: "npm:2.1.5" + esbuild: "npm:0.27.0" + fsevents: "npm:~2.3.2" + miniflare: "npm:4.20251128.0" + path-to-regexp: "npm:6.3.0" + unenv: "npm:2.0.0-rc.24" + workerd: "npm:1.20251128.0" + peerDependencies: + "@cloudflare/workers-types": ^4.20251128.0 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@cloudflare/workers-types": + optional: true + bin: + wrangler: bin/wrangler.js + wrangler2: bin/wrangler.js + checksum: 10c0/f6caea91e2f82658edbe9b03cee2481f6bf6ac20347b06221b6e66735ed5477ca65f9f15086346728250f60b9c711dcef03a5873892307eb60f39be5ed5ac543 + languageName: node + linkType: hard + "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" @@ -10358,6 +11184,21 @@ __metadata: languageName: node linkType: hard +"ws@npm:8.18.0": + version: 8.18.0 + resolution: "ws@npm:8.18.0" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ">=5.0.2" + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 10c0/25eb33aff17edcb90721ed6b0eb250976328533ad3cd1a28a274bd263682e7296a6591ff1436d6cbc50fa67463158b062f9d1122013b361cec99a05f84680e06 + languageName: node + linkType: hard + "ws@npm:^8.18.0": version: 8.18.3 resolution: "ws@npm:8.18.3" @@ -10433,6 +11274,36 @@ __metadata: languageName: node linkType: hard +"youch-core@npm:^0.3.3": + version: 0.3.3 + resolution: "youch-core@npm:0.3.3" + dependencies: + "@poppinss/exception": "npm:^1.2.2" + error-stack-parser-es: "npm:^1.0.5" + checksum: 10c0/fe101a037a6cfaaa4e80e3d062ff33d4b087b65e3407e65220b453c9b2a66c87ea348a7da0239b61623d929d8fa0a9e139486eaa690ef5605bb49947a2fa82f6 + languageName: node + linkType: hard + +"youch@npm:4.1.0-beta.10": + version: 4.1.0-beta.10 + resolution: "youch@npm:4.1.0-beta.10" + dependencies: + "@poppinss/colors": "npm:^4.1.5" + "@poppinss/dumper": "npm:^0.6.4" + "@speed-highlight/core": "npm:^1.2.7" + cookie: "npm:^1.0.2" + youch-core: "npm:^0.3.3" + checksum: 10c0/588d65aa5837a46c8473cf57a9129115383f57aad5899915d37005950decfefc66bec85b8a1262dbefd623a122c279095074655889317311a554f9c2e290a5b3 + languageName: node + linkType: hard + +"zod@npm:3.22.3": + version: 3.22.3 + resolution: "zod@npm:3.22.3" + checksum: 10c0/cb4b24aed7dec98552eb9042e88cbd645455bf2830e5704174d2da96f554dabad4630e3b4f6623e1b6562b9eaa43535a37b7f2011f29b8d8e9eabe1ddf3b656b + languageName: node + linkType: hard + "zod@npm:^4.1.8": version: 4.1.13 resolution: "zod@npm:4.1.13" From eff829f5926d1f7251e65a31ea8547ebfe9593e2 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 12:09:46 -0500 Subject: [PATCH 02/21] give job a name --- .github/workflows/deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 014dd3d7f..6f14a2bf1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,3 +1,4 @@ +name: Deploy to Cloudflare Pages on: [push] jobs: From a0a64501b637b76a52e4704d7e143b59b61e1766 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 12:53:42 -0500 Subject: [PATCH 03/21] fix env --- .env | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .env diff --git a/.env b/.env new file mode 100644 index 000000000..14e36c5ec --- /dev/null +++ b/.env @@ -0,0 +1,2 @@ +VITE_VERSION_LATEST="v11.0.0" +VITE_VERSION_NEXT="v12.0.0" \ No newline at end of file From fa172b27d5f0e19cffa0299d9e9c6b14859914d9 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:22:33 -0500 Subject: [PATCH 04/21] fix project name --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6f14a2bf1..8b3849e75 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -24,6 +24,6 @@ jobs: with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - command: pages deploy public --project-name=rescript-lang.org + command: pages deploy public --project-name=rescript-lang-org # Optional: Enable this if you want to have GitHub Deployments triggered gitHubToken: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file From e5237d3b0658c10d7e735664fe2114fb6cc2680a Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:23:40 -0500 Subject: [PATCH 05/21] functions --- .github/workflows/deploy.yml | 6 +++--- functions/echo.js | 6 +++--- package.json | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 8b3849e75..9989c2094 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -13,8 +13,8 @@ jobs: - name: Setup yarn uses: actions/setup-node@v3 with: - cache: 'yarn' - node-version: '24' + cache: "yarn" + node-version: "24" - name: Build run: | yarn install @@ -26,4 +26,4 @@ jobs: accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} command: pages deploy public --project-name=rescript-lang-org # Optional: Enable this if you want to have GitHub Deployments triggered - gitHubToken: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + gitHubToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/functions/echo.js b/functions/echo.js index 47c57eaa6..19e03a7ff 100644 --- a/functions/echo.js +++ b/functions/echo.js @@ -1,4 +1,4 @@ export function onRequest(context) { - const url = new URL(context.request.url); - return new Response(url.searchParams.toString()); -} \ No newline at end of file + const url = new URL(context.request.url); + return new Response(url.searchParams.toString()); +} diff --git a/package.json b/package.json index 4b142abd8..2d160050c 100644 --- a/package.json +++ b/package.json @@ -96,4 +96,4 @@ "vite-plugin-page-reload": "^0.2.2", "wrangler": "^4.52.0" } -} \ No newline at end of file +} From 6178fcc752228d2e0cf5708854938fe476f9ba71 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:31:45 -0500 Subject: [PATCH 06/21] add workflow_dispath --- .github/workflows/deploy.yml | 11 +++++++++-- functions/{echo.js => echo.jsx} | 0 react-router.config.mjs | 3 --- 3 files changed, 9 insertions(+), 5 deletions(-) rename functions/{echo.js => echo.jsx} (100%) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9989c2094..21f40af70 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,5 +1,12 @@ name: Deploy to Cloudflare Pages -on: [push] +on: + push: + workflow_dispatch: + inputs: + environment: + description: "Choose an environment to deploy to: " + required: true + default: "dev" jobs: deploy: @@ -24,6 +31,6 @@ jobs: with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - command: pages deploy public --project-name=rescript-lang-org + command: pages deploy build/client --project-name=rescript-lang-org # Optional: Enable this if you want to have GitHub Deployments triggered gitHubToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/functions/echo.js b/functions/echo.jsx similarity index 100% rename from functions/echo.js rename to functions/echo.jsx diff --git a/react-router.config.mjs b/react-router.config.mjs index ddb22da04..5c4788190 100644 --- a/react-router.config.mjs +++ b/react-router.config.mjs @@ -23,7 +23,4 @@ export default { ...stdlibPaths, ]; }, - buildEnd: async () => { - fs.cpSync("./build/client", "./out", { recursive: true }); - }, }; From a08ebde44ef0f5073f2b87c1d37f1e1561e7078c Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:35:43 -0500 Subject: [PATCH 07/21] stick with out dir for now --- .github/workflows/deploy.yml | 2 +- react-router.config.mjs | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 21f40af70..e79eb3384 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -31,6 +31,6 @@ jobs: with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - command: pages deploy build/client --project-name=rescript-lang-org + command: pages deploy out --project-name=rescript-lang-org # Optional: Enable this if you want to have GitHub Deployments triggered gitHubToken: ${{ secrets.GITHUB_TOKEN }} diff --git a/react-router.config.mjs b/react-router.config.mjs index 5c4788190..ddb22da04 100644 --- a/react-router.config.mjs +++ b/react-router.config.mjs @@ -23,4 +23,7 @@ export default { ...stdlibPaths, ]; }, + buildEnd: async () => { + fs.cpSync("./build/client", "./out", { recursive: true }); + }, }; From 8c47d8a1d8c283951d3e203df60031be9fb2c4c1 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:48:09 -0500 Subject: [PATCH 08/21] try different action --- .github/workflows/deploy.yml | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e79eb3384..a762f116b 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -13,8 +13,10 @@ jobs: runs-on: ubuntu-latest name: Deploy permissions: + actions: read contents: read deployments: write + pull-requests: write steps: - uses: actions/checkout@v4 - name: Setup yarn @@ -27,10 +29,13 @@ jobs: yarn install yarn build - name: Deploy - uses: cloudflare/wrangler-action@v3 + uses: andykenward/github-actions-cloudflare-pages@v3.0.0 with: - apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} - accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - command: pages deploy out --project-name=rescript-lang-org - # Optional: Enable this if you want to have GitHub Deployments triggered - gitHubToken: ${{ secrets.GITHUB_TOKEN }} + cloudflare-api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }} + cloudflare-account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + cloudflare-project-name: rescript-lang-org + github-token: ${{ secrets.GITHUB_TOKEN }} + github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && '(Production)') || '(Preview)' }} + directory: ./out + + From f0186d35370eaa9f4097344cacd5d0eabcdf2622 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:58:07 -0500 Subject: [PATCH 09/21] fix name --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index a762f116b..2feb183cb 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -35,7 +35,7 @@ jobs: cloudflare-account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} cloudflare-project-name: rescript-lang-org github-token: ${{ secrets.GITHUB_TOKEN }} - github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && '(Production)') || '(Preview)' }} + github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && '(production)') || '(preview)' }} directory: ./out From e82442f4accd4c6af9b4e9921c9909a472d94aef Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 13:58:18 -0500 Subject: [PATCH 10/21] format --- .github/workflows/deploy.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 2feb183cb..1902cdb7c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,5 +1,5 @@ name: Deploy to Cloudflare Pages -on: +on: push: workflow_dispatch: inputs: @@ -37,5 +37,3 @@ jobs: github-token: ${{ secrets.GITHUB_TOKEN }} github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && '(production)') || '(preview)' }} directory: ./out - - From 8f9734d2d8798572957d2cd2f7b401ee8f9ed9bb Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 14:00:19 -0500 Subject: [PATCH 11/21] remove environment from inputs --- .github/workflows/deploy.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1902cdb7c..fa507af6c 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -2,11 +2,6 @@ name: Deploy to Cloudflare Pages on: push: workflow_dispatch: - inputs: - environment: - description: "Choose an environment to deploy to: " - required: true - default: "dev" jobs: deploy: From 4601f43d7090aad139090f463f913f2712e7264c Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 14:01:13 -0500 Subject: [PATCH 12/21] remove () --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index fa507af6c..8ec965763 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -30,5 +30,5 @@ jobs: cloudflare-account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} cloudflare-project-name: rescript-lang-org github-token: ${{ secrets.GITHUB_TOKEN }} - github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && '(production)') || '(preview)' }} + github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && 'production') || 'preview' }} directory: ./out From 05c041ed0f17c8da7eb61b7f2b0ff975414be204 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 14:10:47 -0500 Subject: [PATCH 13/21] add pull_request --- .github/workflows/deploy.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 8ec965763..40cc20e84 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -2,6 +2,7 @@ name: Deploy to Cloudflare Pages on: push: workflow_dispatch: + pull_request: jobs: deploy: @@ -32,3 +33,4 @@ jobs: github-token: ${{ secrets.GITHUB_TOKEN }} github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && 'production') || 'preview' }} directory: ./out + working-directory: . From 0f91f4779727899d75fdf637506c9da58f5fbc9d Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 14:12:03 -0500 Subject: [PATCH 14/21] on changes --- .github/workflows/deploy.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 40cc20e84..9ba8fe6a4 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,8 +1,12 @@ name: Deploy to Cloudflare Pages on: push: + branches: + - master workflow_dispatch: pull_request: + branches: + - master jobs: deploy: From 316f257b2f858cfcedef4fcf2c8a0ced9e40eefe Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 14:56:16 -0500 Subject: [PATCH 15/21] add wrangler --- package.json | 33 +++--- yarn.lock | 308 +++++++++++++++++++++++++-------------------------- 2 files changed, 167 insertions(+), 174 deletions(-) diff --git a/package.json b/package.json index 2d160050c..c8e60a95a 100644 --- a/package.json +++ b/package.json @@ -10,21 +10,24 @@ "packageManager": "yarn@4.12.0", "type": "module", "scripts": { - "dev": "react-router dev --host", - "res:watch": "rescript watch", - "res:clean": "rescript clean", - "res:build": "rescript build", - "build": "rescript build && yarn build-scripts && yarn update-index && react-router build", - "test": "node scripts/test-examples.mjs && node scripts/test-hrefs.mjs", - "update-index": "yarn generate-llms && node _scripts/generate_feed.mjs > public/blog/feed.xml", - "reanalyze": "rescript-tools reanalyze -all-cmt .", - "sync-bundles": "node scripts/sync-playground-bundles.mjs", - "generate-llms": "node _scripts/generate_llms.mjs", - "format": "prettier . --write --experimental-cli && rescript format", + "build:generate-llms": "node _scripts/generate_llms.mjs", + "build:res": "rescript build", + "build:scripts": "yarn dlx tsdown scripts/*.jsx -d _scripts --no-clean --ext .mjs", + "build:sync-bundles": "node scripts/sync-playground-bundles.mjs", + "build:update-index": "yarn build:generate-llms && node _scripts/generate_feed.mjs > public/blog/feed.xml", + "build:vite": "react-router build", + "build": "yarn build:res && yarn build:scripts && yarn build:update-index && yarn build:vite", "ci:format": "prettier . --check --experimental-cli", - "preview": "yarn build && static-server build/client", + "clean:res": "rescript clean", "convert-images": "auto-convert-images", - "build-scripts": "yarn dlx tsdown scripts/*.jsx -d _scripts --no-clean --ext .mjs" + "dev:res": "rescript watch", + "dev:vite": "react-router dev --host", + "dev:wrangler": "yarn wrangler pages dev build/client", + "dev": "yarn dev:res & yarn dev:vite & yarn dev:wrangler", + "format": "prettier . --write --experimental-cli && rescript format", + "preview": "yarn build && static-server build/client", + "reanalyze": "rescript-tools reanalyze -all-cmt .", + "test": "node scripts/test-examples.mjs && node scripts/test-hrefs.mjs" }, "dependencies": { "@babel/generator": "^7.24.7", @@ -94,6 +97,6 @@ "vite-plugin-devtools-json": "^1.0.0", "vite-plugin-env-compatible": "^2.0.1", "vite-plugin-page-reload": "^0.2.2", - "wrangler": "^4.52.0" + "wrangler": "^4.51.0" } -} +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index bbef93371..106eedcf3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -601,50 +601,50 @@ __metadata: languageName: node linkType: hard -"@cloudflare/unenv-preset@npm:2.7.12": - version: 2.7.12 - resolution: "@cloudflare/unenv-preset@npm:2.7.12" +"@cloudflare/unenv-preset@npm:2.7.11": + version: 2.7.11 + resolution: "@cloudflare/unenv-preset@npm:2.7.11" peerDependencies: unenv: 2.0.0-rc.24 - workerd: ^1.20251125.0 + workerd: ^1.20251106.1 peerDependenciesMeta: workerd: optional: true - checksum: 10c0/1d616b3ea72ac98f7144e41dea2c17b2f44c0c4f99a3cb43c1a422b4a00a7d7c6a0f0f056351d40c87c62053add9be95accd49661a68fc98857dd9f00997a032 + checksum: 10c0/cfd415ed2149254762d1bddfc457a7ccbba2a24b9d779e5defcb9b771b7c68ab75ff439dc88544fd1f82b7f5666d872a870c109675e4f54aa567217c5dec265d languageName: node linkType: hard -"@cloudflare/workerd-darwin-64@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "@cloudflare/workerd-darwin-64@npm:1.20251128.0" +"@cloudflare/workerd-darwin-64@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "@cloudflare/workerd-darwin-64@npm:1.20251125.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@cloudflare/workerd-darwin-arm64@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "@cloudflare/workerd-darwin-arm64@npm:1.20251128.0" +"@cloudflare/workerd-darwin-arm64@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "@cloudflare/workerd-darwin-arm64@npm:1.20251125.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@cloudflare/workerd-linux-64@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "@cloudflare/workerd-linux-64@npm:1.20251128.0" +"@cloudflare/workerd-linux-64@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "@cloudflare/workerd-linux-64@npm:1.20251125.0" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@cloudflare/workerd-linux-arm64@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "@cloudflare/workerd-linux-arm64@npm:1.20251128.0" +"@cloudflare/workerd-linux-arm64@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "@cloudflare/workerd-linux-arm64@npm:1.20251125.0" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@cloudflare/workerd-windows-64@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "@cloudflare/workerd-windows-64@npm:1.20251128.0" +"@cloudflare/workerd-windows-64@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "@cloudflare/workerd-windows-64@npm:1.20251125.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -897,9 +897,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/aix-ppc64@npm:0.27.0" +"@esbuild/aix-ppc64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/aix-ppc64@npm:0.25.4" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard @@ -911,9 +911,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/android-arm64@npm:0.27.0" +"@esbuild/android-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/android-arm64@npm:0.25.4" conditions: os=android & cpu=arm64 languageName: node linkType: hard @@ -925,9 +925,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/android-arm@npm:0.27.0" +"@esbuild/android-arm@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/android-arm@npm:0.25.4" conditions: os=android & cpu=arm languageName: node linkType: hard @@ -939,9 +939,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/android-x64@npm:0.27.0" +"@esbuild/android-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/android-x64@npm:0.25.4" conditions: os=android & cpu=x64 languageName: node linkType: hard @@ -953,9 +953,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/darwin-arm64@npm:0.27.0" +"@esbuild/darwin-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/darwin-arm64@npm:0.25.4" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -967,9 +967,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/darwin-x64@npm:0.27.0" +"@esbuild/darwin-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/darwin-x64@npm:0.25.4" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -981,9 +981,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/freebsd-arm64@npm:0.27.0" +"@esbuild/freebsd-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/freebsd-arm64@npm:0.25.4" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard @@ -995,9 +995,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/freebsd-x64@npm:0.27.0" +"@esbuild/freebsd-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/freebsd-x64@npm:0.25.4" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard @@ -1009,9 +1009,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-arm64@npm:0.27.0" +"@esbuild/linux-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-arm64@npm:0.25.4" conditions: os=linux & cpu=arm64 languageName: node linkType: hard @@ -1023,9 +1023,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-arm@npm:0.27.0" +"@esbuild/linux-arm@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-arm@npm:0.25.4" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -1037,9 +1037,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-ia32@npm:0.27.0" +"@esbuild/linux-ia32@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-ia32@npm:0.25.4" conditions: os=linux & cpu=ia32 languageName: node linkType: hard @@ -1051,9 +1051,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-loong64@npm:0.27.0" +"@esbuild/linux-loong64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-loong64@npm:0.25.4" conditions: os=linux & cpu=loong64 languageName: node linkType: hard @@ -1065,9 +1065,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-mips64el@npm:0.27.0" +"@esbuild/linux-mips64el@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-mips64el@npm:0.25.4" conditions: os=linux & cpu=mips64el languageName: node linkType: hard @@ -1079,9 +1079,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-ppc64@npm:0.27.0" +"@esbuild/linux-ppc64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-ppc64@npm:0.25.4" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -1093,9 +1093,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-riscv64@npm:0.27.0" +"@esbuild/linux-riscv64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-riscv64@npm:0.25.4" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard @@ -1107,9 +1107,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-s390x@npm:0.27.0" +"@esbuild/linux-s390x@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-s390x@npm:0.25.4" conditions: os=linux & cpu=s390x languageName: node linkType: hard @@ -1121,9 +1121,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/linux-x64@npm:0.27.0" +"@esbuild/linux-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/linux-x64@npm:0.25.4" conditions: os=linux & cpu=x64 languageName: node linkType: hard @@ -1135,9 +1135,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/netbsd-arm64@npm:0.27.0" +"@esbuild/netbsd-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/netbsd-arm64@npm:0.25.4" conditions: os=netbsd & cpu=arm64 languageName: node linkType: hard @@ -1149,9 +1149,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/netbsd-x64@npm:0.27.0" +"@esbuild/netbsd-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/netbsd-x64@npm:0.25.4" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard @@ -1163,9 +1163,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/openbsd-arm64@npm:0.27.0" +"@esbuild/openbsd-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/openbsd-arm64@npm:0.25.4" conditions: os=openbsd & cpu=arm64 languageName: node linkType: hard @@ -1177,9 +1177,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/openbsd-x64@npm:0.27.0" +"@esbuild/openbsd-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/openbsd-x64@npm:0.25.4" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard @@ -1191,13 +1191,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openharmony-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/openharmony-arm64@npm:0.27.0" - conditions: os=openharmony & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/sunos-x64@npm:0.25.12": version: 0.25.12 resolution: "@esbuild/sunos-x64@npm:0.25.12" @@ -1205,9 +1198,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/sunos-x64@npm:0.27.0" +"@esbuild/sunos-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/sunos-x64@npm:0.25.4" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -1219,9 +1212,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/win32-arm64@npm:0.27.0" +"@esbuild/win32-arm64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/win32-arm64@npm:0.25.4" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -1233,9 +1226,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/win32-ia32@npm:0.27.0" +"@esbuild/win32-ia32@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/win32-ia32@npm:0.25.4" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -1247,9 +1240,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.27.0": - version: 0.27.0 - resolution: "@esbuild/win32-x64@npm:0.27.0" +"@esbuild/win32-x64@npm:0.25.4": + version: 0.25.4 + resolution: "@esbuild/win32-x64@npm:0.25.4" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -4725,36 +4718,35 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:0.27.0": - version: 0.27.0 - resolution: "esbuild@npm:0.27.0" - dependencies: - "@esbuild/aix-ppc64": "npm:0.27.0" - "@esbuild/android-arm": "npm:0.27.0" - "@esbuild/android-arm64": "npm:0.27.0" - "@esbuild/android-x64": "npm:0.27.0" - "@esbuild/darwin-arm64": "npm:0.27.0" - "@esbuild/darwin-x64": "npm:0.27.0" - "@esbuild/freebsd-arm64": "npm:0.27.0" - "@esbuild/freebsd-x64": "npm:0.27.0" - "@esbuild/linux-arm": "npm:0.27.0" - "@esbuild/linux-arm64": "npm:0.27.0" - "@esbuild/linux-ia32": "npm:0.27.0" - "@esbuild/linux-loong64": "npm:0.27.0" - "@esbuild/linux-mips64el": "npm:0.27.0" - "@esbuild/linux-ppc64": "npm:0.27.0" - "@esbuild/linux-riscv64": "npm:0.27.0" - "@esbuild/linux-s390x": "npm:0.27.0" - "@esbuild/linux-x64": "npm:0.27.0" - "@esbuild/netbsd-arm64": "npm:0.27.0" - "@esbuild/netbsd-x64": "npm:0.27.0" - "@esbuild/openbsd-arm64": "npm:0.27.0" - "@esbuild/openbsd-x64": "npm:0.27.0" - "@esbuild/openharmony-arm64": "npm:0.27.0" - "@esbuild/sunos-x64": "npm:0.27.0" - "@esbuild/win32-arm64": "npm:0.27.0" - "@esbuild/win32-ia32": "npm:0.27.0" - "@esbuild/win32-x64": "npm:0.27.0" +"esbuild@npm:0.25.4": + version: 0.25.4 + resolution: "esbuild@npm:0.25.4" + dependencies: + "@esbuild/aix-ppc64": "npm:0.25.4" + "@esbuild/android-arm": "npm:0.25.4" + "@esbuild/android-arm64": "npm:0.25.4" + "@esbuild/android-x64": "npm:0.25.4" + "@esbuild/darwin-arm64": "npm:0.25.4" + "@esbuild/darwin-x64": "npm:0.25.4" + "@esbuild/freebsd-arm64": "npm:0.25.4" + "@esbuild/freebsd-x64": "npm:0.25.4" + "@esbuild/linux-arm": "npm:0.25.4" + "@esbuild/linux-arm64": "npm:0.25.4" + "@esbuild/linux-ia32": "npm:0.25.4" + "@esbuild/linux-loong64": "npm:0.25.4" + "@esbuild/linux-mips64el": "npm:0.25.4" + "@esbuild/linux-ppc64": "npm:0.25.4" + "@esbuild/linux-riscv64": "npm:0.25.4" + "@esbuild/linux-s390x": "npm:0.25.4" + "@esbuild/linux-x64": "npm:0.25.4" + "@esbuild/netbsd-arm64": "npm:0.25.4" + "@esbuild/netbsd-x64": "npm:0.25.4" + "@esbuild/openbsd-arm64": "npm:0.25.4" + "@esbuild/openbsd-x64": "npm:0.25.4" + "@esbuild/sunos-x64": "npm:0.25.4" + "@esbuild/win32-arm64": "npm:0.25.4" + "@esbuild/win32-ia32": "npm:0.25.4" + "@esbuild/win32-x64": "npm:0.25.4" dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -4798,8 +4790,6 @@ __metadata: optional: true "@esbuild/openbsd-x64": optional: true - "@esbuild/openharmony-arm64": - optional: true "@esbuild/sunos-x64": optional: true "@esbuild/win32-arm64": @@ -4810,7 +4800,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 10c0/a3a1deec285337b7dfe25cbb9aa8765d27a0192b610a8477a39bf5bd907a6bdb75e98898b61fb4337114cfadb13163bd95977db14e241373115f548e235b40a2 + checksum: 10c0/db9f51248f0560bc46ab219461d338047617f6caf373c95f643b204760bdfa10c95b48cfde948949f7e509599ae4ab61c3f112092a3534936c6abfb800c565b0 languageName: node linkType: hard @@ -7723,9 +7713,9 @@ __metadata: languageName: node linkType: hard -"miniflare@npm:4.20251128.0": - version: 4.20251128.0 - resolution: "miniflare@npm:4.20251128.0" +"miniflare@npm:4.20251125.0": + version: 4.20251125.0 + resolution: "miniflare@npm:4.20251125.0" dependencies: "@cspotcode/source-map-support": "npm:0.8.1" acorn: "npm:8.14.0" @@ -7735,13 +7725,13 @@ __metadata: sharp: "npm:^0.33.5" stoppable: "npm:1.1.0" undici: "npm:7.14.0" - workerd: "npm:1.20251128.0" + workerd: "npm:1.20251125.0" ws: "npm:8.18.0" youch: "npm:4.1.0-beta.10" zod: "npm:3.22.3" bin: miniflare: bootstrap.js - checksum: 10c0/4a9e1292531017efb93aa1ade4f2962aa91a2d74eaf6e7a49b3569e97db0f64efb56cdad84726a4e01e589a0a58c7a25480b376424e0f3e56c34a42bc128fbf1 + checksum: 10c0/1f7f8b7d47084b9518b0a60ce4888fd4ccc26be1e15fda4a0bc96faa23610bac62b7372c3f7f1b8a2a69cce93f7faa7ed0fddafed312c38bc46ea706a0c4c8ea languageName: node linkType: hard @@ -9133,7 +9123,7 @@ __metadata: vite-plugin-devtools-json: "npm:^1.0.0" vite-plugin-env-compatible: "npm:^2.0.1" vite-plugin-page-reload: "npm:^0.2.2" - wrangler: "npm:^4.52.0" + wrangler: "npm:^4.51.0" languageName: unknown linkType: soft @@ -11090,15 +11080,15 @@ __metadata: languageName: node linkType: hard -"workerd@npm:1.20251128.0": - version: 1.20251128.0 - resolution: "workerd@npm:1.20251128.0" +"workerd@npm:1.20251125.0": + version: 1.20251125.0 + resolution: "workerd@npm:1.20251125.0" dependencies: - "@cloudflare/workerd-darwin-64": "npm:1.20251128.0" - "@cloudflare/workerd-darwin-arm64": "npm:1.20251128.0" - "@cloudflare/workerd-linux-64": "npm:1.20251128.0" - "@cloudflare/workerd-linux-arm64": "npm:1.20251128.0" - "@cloudflare/workerd-windows-64": "npm:1.20251128.0" + "@cloudflare/workerd-darwin-64": "npm:1.20251125.0" + "@cloudflare/workerd-darwin-arm64": "npm:1.20251125.0" + "@cloudflare/workerd-linux-64": "npm:1.20251125.0" + "@cloudflare/workerd-linux-arm64": "npm:1.20251125.0" + "@cloudflare/workerd-windows-64": "npm:1.20251125.0" dependenciesMeta: "@cloudflare/workerd-darwin-64": optional: true @@ -11112,25 +11102,25 @@ __metadata: optional: true bin: workerd: bin/workerd - checksum: 10c0/1f684aa45f28a9d403bca9fd100362420f9836f7608efc05cee6f212e01e139c68c40ecc75a84902b8cfe4bb0183c16ba263f806bc10d4d6e25071da5cb80f94 + checksum: 10c0/d38f65e7e096f92a73dc3a605c15ca2f6312ef20ec1694558233f2a4b10e8b1573c33d4f0eac1a1844f38ef138adc148cff63b9b49e6938b93e836df6c01307a languageName: node linkType: hard -"wrangler@npm:^4.52.0": - version: 4.52.0 - resolution: "wrangler@npm:4.52.0" +"wrangler@npm:^4.51.0": + version: 4.51.0 + resolution: "wrangler@npm:4.51.0" dependencies: "@cloudflare/kv-asset-handler": "npm:0.4.1" - "@cloudflare/unenv-preset": "npm:2.7.12" + "@cloudflare/unenv-preset": "npm:2.7.11" blake3-wasm: "npm:2.1.5" - esbuild: "npm:0.27.0" + esbuild: "npm:0.25.4" fsevents: "npm:~2.3.2" - miniflare: "npm:4.20251128.0" + miniflare: "npm:4.20251125.0" path-to-regexp: "npm:6.3.0" unenv: "npm:2.0.0-rc.24" - workerd: "npm:1.20251128.0" + workerd: "npm:1.20251125.0" peerDependencies: - "@cloudflare/workers-types": ^4.20251128.0 + "@cloudflare/workers-types": ^4.20251125.0 dependenciesMeta: fsevents: optional: true @@ -11140,7 +11130,7 @@ __metadata: bin: wrangler: bin/wrangler.js wrangler2: bin/wrangler.js - checksum: 10c0/f6caea91e2f82658edbe9b03cee2481f6bf6ac20347b06221b6e66735ed5477ca65f9f15086346728250f60b9c711dcef03a5873892307eb60f39be5ed5ac543 + checksum: 10c0/25edc452fecd49c61fa28c71f02689414041e8a7ea9945b559777be16204be135abcc850875a182bb4be313978cef9ba1123f1083d4273fb31e43c8a68fb7fe0 languageName: node linkType: hard From f23ea083737f48837accfc6c3577d1b5483bf582 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:02:17 -0500 Subject: [PATCH 16/21] update readme --- README.md | 30 +----------------------------- package.json | 3 ++- 2 files changed, 3 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 406cfc0e6..692d71a94 100644 --- a/README.md +++ b/README.md @@ -23,38 +23,10 @@ This is the official documentation platform for the [ReScript](https://rescript- # For first time clone / build (install dependencies) yarn -# Initial build -yarn rescript - -# Build the index data. Only needed for initial clone (or content H2 changes) -yarn update-index - -# In a new tab +# Run ReScript, Vite, and Wrangler in development mode yarn dev - -open localhost:3000 -``` - -In case you want to run ReScript in watchmode: - -```sh -yarn rescript -w ``` -## Build Index Data - -We are parsing our content for specific index data (such as, all interesting -search terms we need for searching inside the `Belt` docs). You can create your -index by running following command: - -```sh -yarn update-index -``` - -All the index data is stored in `index_data`, but will not be tracked by git. -Make sure to build the index after a fresh clone, otherwise Next might not -build specific pages (file `index_data/x.json` not found). - ## Project Structure Overview - `data`: Contains hand-curated data, such as sidebar ordering, blog data, etc diff --git a/package.json b/package.json index c8e60a95a..01bbe619b 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,9 @@ "dev:res": "rescript watch", "dev:vite": "react-router dev --host", "dev:wrangler": "yarn wrangler pages dev build/client", - "dev": "yarn dev:res & yarn dev:vite & yarn dev:wrangler", + "dev": "yarn prepare && yarn dev:res & yarn dev:vite & yarn dev:wrangler", "format": "prettier . --write --experimental-cli && rescript format", + "prepare": "yarn build:res && yarn build:scripts && yarn build:update-index", "preview": "yarn build && static-server build/client", "reanalyze": "rescript-tools reanalyze -all-cmt .", "test": "node scripts/test-examples.mjs && node scripts/test-hrefs.mjs" From 5fa03dbb3b3db4ec4889dcc1607de792ca5a308f Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:09:59 -0500 Subject: [PATCH 17/21] break out into different jobs --- .github/workflows/deploy.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 9ba8fe6a4..3d6a9698d 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -24,10 +24,10 @@ jobs: with: cache: "yarn" node-version: "24" + - name: Install dependencies + run: yarn install - name: Build - run: | - yarn install - yarn build + run: yarn build - name: Deploy uses: andykenward/github-actions-cloudflare-pages@v3.0.0 with: From 5679978733fbec7ff9baa6771bf87f0cb78ee9e5 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:11:16 -0500 Subject: [PATCH 18/21] update commands --- .github/workflows/pull-request.yml | 2 +- markdown-pages/docs/manual/installation.mdx | 6 +++--- markdown-pages/docs/manual/typescript-integration.mdx | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 7994a74e5..bc85eeee8 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -10,6 +10,6 @@ jobs: node-version-file: ".node-version" cache: yarn - run: yarn - - run: yarn res:build --warn-error +3+8+11+12+26+27+31+32+33+34+35+39+44+45+110 + - run: yarn build:res --warn-error +3+8+11+12+26+27+31+32+33+34+35+39+44+45+110 - run: yarn test - run: yarn ci:format diff --git a/markdown-pages/docs/manual/installation.mdx b/markdown-pages/docs/manual/installation.mdx index d919f6f80..a2bc7f038 100644 --- a/markdown-pages/docs/manual/installation.mdx +++ b/markdown-pages/docs/manual/installation.mdx @@ -56,7 +56,7 @@ bun create rescript-app - Trigger a ReScript build: ```sh - npm run res:build + npm run build:res ``` - If you selected the "basic" template, simply run it with: @@ -156,8 +156,8 @@ bun create rescript-app - Add convenience `npm` scripts to `package.json`: ```json "scripts": { - "res:build": "rescript", - "res:dev": "rescript -w" + "build:res": "rescript", + "dev:res": "rescript watch" } ``` diff --git a/markdown-pages/docs/manual/typescript-integration.mdx b/markdown-pages/docs/manual/typescript-integration.mdx index 413614e47..98278f441 100644 --- a/markdown-pages/docs/manual/typescript-integration.mdx +++ b/markdown-pages/docs/manual/typescript-integration.mdx @@ -201,7 +201,7 @@ In case of the TypeScript project using `Bundler` module resolution, `allowImpor Open any relevant `*.res` file and add `@genType` annotations to any bindings / values / functions to be used from JavaScript. If an annotated value uses a type, the type must be annotated too. See e.g. [Hooks.res](https://github.com/rescript-lang/rescript-compiler/blob/master/jscomp/gentype_tests/typescript-react-example/src/Hooks.res). -Save the file and rebuild the project via `npm run res:build` or similar. You should now see a `*.gen.tsx` file with the same name (e.g. `MyComponent.res` -> `MyComponent.gen.tsx`). +Save the file and rebuild the project via `npm run build:res` or similar. You should now see a `*.gen.tsx` file with the same name (e.g. `MyComponent.res` -> `MyComponent.gen.tsx`). Any values exported from `MyComponent.res` can then be imported from TypeScript. For example: From 35923180b68129f15f90845b40821d38748ce338 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:23:21 -0500 Subject: [PATCH 19/21] go back to official action --- .github/workflows/deploy.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3d6a9698d..08e637986 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -4,6 +4,11 @@ on: branches: - master workflow_dispatch: + inputs: + environment: + description: "Choose an environment to deploy to: " + required: true + default: "dev" pull_request: branches: - master @@ -13,10 +18,8 @@ jobs: runs-on: ubuntu-latest name: Deploy permissions: - actions: read contents: read deployments: write - pull-requests: write steps: - uses: actions/checkout@v4 - name: Setup yarn @@ -29,12 +32,10 @@ jobs: - name: Build run: yarn build - name: Deploy - uses: andykenward/github-actions-cloudflare-pages@v3.0.0 + uses: cloudflare/wrangler-action@v3 with: - cloudflare-api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }} - cloudflare-account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} - cloudflare-project-name: rescript-lang-org - github-token: ${{ secrets.GITHUB_TOKEN }} - github-environment: ${{ vars.CLOUDFLARE_PROJECT_NAME }} ${{ (github.ref == 'refs/heads/master' && 'production') || 'preview' }} - directory: ./out - working-directory: . + apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} + accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + command: pages deploy out --project-name=rescript-lang-org + # Optional: Enable this if you want to have GitHub Deployments triggered + gitHubToken: ${{ secrets.GITHUB_TOKEN }} From feec47e21a1009bce1161b1f23a056f0a7c30efa Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:34:23 -0500 Subject: [PATCH 20/21] add comment --- .github/workflows/deploy.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 08e637986..3569758db 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -32,6 +32,7 @@ jobs: - name: Build run: yarn build - name: Deploy + id: deploy uses: cloudflare/wrangler-action@v3 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} @@ -39,3 +40,15 @@ jobs: command: pages deploy out --project-name=rescript-lang-org # Optional: Enable this if you want to have GitHub Deployments triggered gitHubToken: ${{ secrets.GITHUB_TOKEN }} + continue-on-error: true + - name: Comment PR with deployment link + uses: marocchino/sticky-pull-request-comment@v2 + with: + recreate: true + message: | + ## Deployed ${{ steps.deploy.outputs.pages-deployment-id }} to Cloudflare Pages ${{ steps.deploy.outputs.pages-environment }} + Deployment Status: ${{ steps.deploy.conclusion }} + Deployment Url: ${{ steps.deploy.outputs.deployment-url }} + Deployment Alias Url: ${{ steps.deploy.outputs.pages-deployment-alias-url }} + ${{ steps.deploy.outputs.command-output }} + ${{ steps.deploy.outputs.command-stderr }} From 4277ac33c674cf87bbc7f3e252f6720f443c9140 Mon Sep 17 00:00:00 2001 From: Josh Vlk Date: Tue, 2 Dec 2025 15:38:09 -0500 Subject: [PATCH 21/21] fix permissions --- .github/workflows/deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3569758db..3bd8c2f5f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -20,6 +20,7 @@ jobs: permissions: contents: read deployments: write + pull-requests: write steps: - uses: actions/checkout@v4 - name: Setup yarn