From 8dc521c92a115c3800f421c737ff55d53d504997 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20H=C3=B8st=20Normark?= Date: Mon, 30 Jun 2025 15:56:49 +0200 Subject: [PATCH] Avoid `db:local` script for D1 database (#362) Co-authored-by: Aman Varshney --- .changeset/itchy-bikes-sit.md | 5 +++++ .../helpers/project-generation/create-readme.ts | 17 +++++++++++++++-- .../project-generation/project-config.ts | 6 +++++- 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 .changeset/itchy-bikes-sit.md diff --git a/.changeset/itchy-bikes-sit.md b/.changeset/itchy-bikes-sit.md new file mode 100644 index 0000000..6f4609b --- /dev/null +++ b/.changeset/itchy-bikes-sit.md @@ -0,0 +1,5 @@ +--- +"create-better-t-stack": patch +--- + +Avoid db:local script for D1 database diff --git a/apps/cli/src/helpers/project-generation/create-readme.ts b/apps/cli/src/helpers/project-generation/create-readme.ts index dffb5b7..2604e38 100644 --- a/apps/cli/src/helpers/project-generation/create-readme.ts +++ b/apps/cli/src/helpers/project-generation/create-readme.ts @@ -5,6 +5,7 @@ import type { Addons, API, Database, + DatabaseSetup, Frontend, ORM, ProjectConfig, @@ -96,7 +97,13 @@ ${packageManagerRunCmd} dev:setup \`\`\` Follow the prompts to create a new Convex project and connect it to your application.` - : generateDatabaseSetup(database, auth, packageManagerRunCmd, orm) + : generateDatabaseSetup( + database, + auth, + packageManagerRunCmd, + orm, + options.dbSetup, + ) } Then, run the development server: @@ -467,6 +474,7 @@ function generateDatabaseSetup( _auth: boolean, packageManagerRunCmd: string, orm: ORM, + dbSetup: DatabaseSetup, ): string { if (database === "none") { return ""; @@ -484,9 +492,14 @@ function generateDatabaseSetup( }. 1. Start the local SQLite database: -\`\`\`bash +${ + dbSetup === "d1" + ? "Local development for a Cloudflare D1 database will already be running as part of the `wrangler dev` command." + : `\`\`\`bash cd apps/server && ${packageManagerRunCmd} db:local \`\`\` +` +} 2. Update your \`.env\` file in the \`apps/server\` directory with the appropriate connection details if needed. `; diff --git a/apps/cli/src/helpers/project-generation/project-config.ts b/apps/cli/src/helpers/project-generation/project-config.ts index 620874f..23f0b70 100644 --- a/apps/cli/src/helpers/project-generation/project-config.ts +++ b/apps/cli/src/helpers/project-generation/project-config.ts @@ -225,7 +225,11 @@ async function updateServerPackageJson( const scripts = serverPackageJson.scripts; if (options.database !== "none") { - if (options.database === "sqlite" && options.orm === "drizzle") { + if ( + options.database === "sqlite" && + options.orm === "drizzle" && + options.dbSetup !== "d1" + ) { scripts["db:local"] = "turso dev --db-file local.db"; }