artdenseigner
v1.0.0
Published
This project creates a small placeholder worker entrypoint at `dist/_worker.js/index.js` to satisfy the Cloudflare plugin's config-time checks for the `main` entry in `wrangler.toml`. Without an entrypoint the build or adapter checks can fail early.
Readme
Dev notes
This project creates a small placeholder worker entrypoint at dist/_worker.js/index.js to satisfy the Cloudflare plugin's config-time checks for the main entry in wrangler.toml. Without an entrypoint the build or adapter checks can fail early.
To make development pleasant we now do one of two things:
In normal build flows the placeholder is a minimal 503 response:
- Response body:
Worker building — placeholder response - Status: 503
- This file is intended to be overwritten by the real build artifact during
astro build.
- Response body:
In development (recommended) the placeholder is a dev-proxy:
- It forwards incoming requests to the local dev server (default:
http://127.0.0.1:8083) so visiting the public URL returns the same content you see onastro dev. - The placeholder file contains both:
/* AUTOGENERATED BY scripts/ensure-worker-main.mjs *//* DEV_PROXY_PLACEHOLDER */(if the proxy mode is enabled)
- It forwards incoming requests to the local dev server (default:
How to use
Start dev (default dev script enables the proxy):
pnpm run devThis runs
node scripts/ensure-worker-main.mjswithDEV_PLACEHOLDER_PROXY=1(so the placeholder will proxy to the local dev server), cleans ports, then runsastro dev.Create / update the placeholder manually (proxy mode):
DEV_PLACEHOLDER_PROXY=1 node scripts/ensure-worker-main.mjsCreate the minimal (non-proxy) placeholder:
node scripts/ensure-worker-main.mjsCustom dev server URL:
DEV_PLACEHOLDER_PROXY=1 DEV_SERVER_URL=http://127.0.0.1:8088 node scripts/ensure-worker-main.mjs
Troubleshooting
- If you see
Worker building — placeholder responsein dev:- Make sure
pnpm run devwas used (it setsDEV_PLACEHOLDER_PROXY=1by default). - Run
DEV_PLACEHOLDER_PROXY=1 node scripts/ensure-worker-main.mjsto ensure the placeholder is in proxy mode. - Verify the placeholder at
dist/_worker.js/index.jscontains/* DEV_PROXY_PLACEHOLDER */. - If your dev server uses a different port, set
DEV_SERVER_URLto the correct address.
- Make sure
Why this exists
The Cloudflare plugin validates that the main path in wrangler.toml points to an existing file at config time. We create a safe, idempotent placeholder so the plugin and local tooling don't fail. In dev the proxy mode makes the placeholder behave like a helpful bridge to your running astro dev process until the real worker build replaces it.
If you want this behavior changed or made conditional in another way, let us know and we can adjust the script or the dev script in package.json.
