How do I work with local D1 in a SvelteKit project?
I've created a new SvelteKit project and can successfully interact with hosted D1 after following the guide https://developers.cloudflare.com/d1/examples/d1-and-sveltekit/. Using
pnpm dev
to launch the SvelteKit local dev environment as standard works for the hosted D1.
However I would like to develop locally also. The guide advises to pass --d1 BINDING_NAME=DATABASE_ID
to wrangler dev (e.g., npx wrangler dev --d1 DB=example-uuid-here
) but this results in ✘ [ERROR] Unknown argument: d1
(which aligns with wrangler's docs https://developers.cloudflare.com/workers/wrangler/commands/#dev, no d1 option exists)
I have the following config:
If I run npx wrangler dev
I receive: ✘ [ERROR] Missing entry-point: The entry-point should be specified via the command line (e.g.
wrangler dev path/to/script) or the
main config field.
Cloudflare Docs
Query D1 from SvelteKit · Cloudflare D1 docs
SvelteKit is a full-stack framework that combines the Svelte front-end framework with Vite for server-side capabilities and rendering. You can query …
Cloudflare Docs
Commands - Wrangler · Cloudflare Workers docs
Create, develop, and deploy your Cloudflare Workers with Wrangler commands.
6 Replies
I also have a D1 + SvelteKit project set up, and for me it runs a local D1 binding when I use
vite dev
. I also have the binding set in the wrangler TOML like you do. From what I understand, SvelteKit's dev server takes care of finding the binding there.Hmm perhaps I've messed up somewhere else 😦
I bootstrapped my project using this command:
npm create cloudflare@latest my-project-name -- --framework=svelte
. I followed the instructions here to get my project set up and running without D1: https://developers.cloudflare.com/pages/framework-guides/deploy-a-svelte-site/ Then I added D1 by following steps 3 through 7 on this page, except for step 6 I used npm run dev
, which runs vite dev
: https://developers.cloudflare.com/d1/get-started/#3-create-a-databaseCloudflare Docs
Deploy a Svelte site · Cloudflare Pages docs
Svelte is an increasingly popular, open-source framework for building user interfaces and web applications. Unlike most frameworks, Svelte is …
@stibbs did you get it to work?
Yes, following those two guides did the trick
I don’t know how to mark as solved (on my phone currently and can’t see an option?)
Nice! Glad to hear it.