From 640e64ef46d4bd3314394727b68206e313049980 Mon Sep 17 00:00:00 2001 From: Aman Varshney Date: Tue, 18 Mar 2025 17:28:37 +0530 Subject: [PATCH] Improve CLI prompts and template cleanup --- .changeset/three-clowns-notice.md | 5 ++++ apps/cli/src/prompts/install.ts | 2 +- apps/cli/src/prompts/package-manager.ts | 26 ++++++------------- .../base/packages/client/src/index.css | 8 ------ .../base/packages/client/src/routes/index.tsx | 1 - .../template/with-auth/packages/client/_env | 1 - .../packages/server/src/db/index.ts | 2 +- .../packages/server/src/lib/auth.ts | 2 +- 8 files changed, 16 insertions(+), 31 deletions(-) create mode 100644 .changeset/three-clowns-notice.md delete mode 100644 apps/cli/template/with-auth/packages/client/_env diff --git a/.changeset/three-clowns-notice.md b/.changeset/three-clowns-notice.md new file mode 100644 index 0000000..adbd8ae --- /dev/null +++ b/.changeset/three-clowns-notice.md @@ -0,0 +1,5 @@ +--- +"create-better-t-stack": patch +--- + +Improve package manager prompts diff --git a/apps/cli/src/prompts/install.ts b/apps/cli/src/prompts/install.ts index ec62f27..1058516 100644 --- a/apps/cli/src/prompts/install.ts +++ b/apps/cli/src/prompts/install.ts @@ -8,7 +8,7 @@ export async function getNoInstallChoice( if (noInstall !== undefined) return noInstall; const response = await confirm({ - message: "Install dependencies?", + message: "Do you want to install project dependencies?", initialValue: !DEFAULT_CONFIG.noInstall, }); diff --git a/apps/cli/src/prompts/package-manager.ts b/apps/cli/src/prompts/package-manager.ts index f0556fc..8933cab 100644 --- a/apps/cli/src/prompts/package-manager.ts +++ b/apps/cli/src/prompts/package-manager.ts @@ -1,4 +1,4 @@ -import { cancel, confirm, isCancel, select } from "@clack/prompts"; +import { cancel, isCancel, select } from "@clack/prompts"; import pc from "picocolors"; import type { PackageManager } from "../types"; import { getUserPkgManager } from "../utils/get-package-manager"; @@ -9,21 +9,16 @@ export async function getPackageManagerChoice( if (packageManager !== undefined) return packageManager; const detectedPackageManager = getUserPkgManager(); - const useDetected = await confirm({ - message: `Use ${detectedPackageManager} as your package manager?`, - }); - - if (isCancel(useDetected)) { - cancel(pc.red("Operation cancelled")); - process.exit(0); - } - - if (useDetected) return detectedPackageManager; const response = await select({ - message: "Which package manager would you like to use?", + message: "Which package manager do you want to use?", options: [ { value: "npm", label: "npm", hint: "Node Package Manager" }, + { + value: "bun", + label: "bun", + hint: "All-in-one JavaScript runtime & toolkit", + }, { value: "pnpm", label: "pnpm", @@ -34,13 +29,8 @@ export async function getPackageManagerChoice( label: "yarn", hint: "Fast, reliable, and secure dependency management", }, - { - value: "bun", - label: "bun", - hint: "All-in-one JavaScript runtime & toolkit", - }, ], - initialValue: "bun", + initialValue: detectedPackageManager, }); if (isCancel(response)) { diff --git a/apps/cli/template/base/packages/client/src/index.css b/apps/cli/template/base/packages/client/src/index.css index ee957e3..334e9db 100644 --- a/apps/cli/template/base/packages/client/src/index.css +++ b/apps/cli/template/base/packages/client/src/index.css @@ -44,14 +44,6 @@ --color-chart-5: hsl(var(--chart-5)); } -/* - The default border color has changed to `currentColor` in Tailwind CSS v4, - so we've added these compatibility styles to make sure everything still - looks the same as it did with Tailwind CSS v3. - - If we ever want to remove these styles, we need to add an explicit border - color utility to any element that depends on these defaults. -*/ @layer base { *, ::after, diff --git a/apps/cli/template/base/packages/client/src/routes/index.tsx b/apps/cli/template/base/packages/client/src/routes/index.tsx index 5a6c792..0c29d5a 100644 --- a/apps/cli/template/base/packages/client/src/routes/index.tsx +++ b/apps/cli/template/base/packages/client/src/routes/index.tsx @@ -10,7 +10,6 @@ function HomeComponent() { return (

Welcome Home!

- Go to Dashboard

healthCheck: {healthCheck.data}

); diff --git a/apps/cli/template/with-auth/packages/client/_env b/apps/cli/template/with-auth/packages/client/_env deleted file mode 100644 index df1d25c..0000000 --- a/apps/cli/template/with-auth/packages/client/_env +++ /dev/null @@ -1 +0,0 @@ -VITE_SERVER_URL=http://localhost:3000 diff --git a/apps/cli/template/with-prisma-sqlite/packages/server/src/db/index.ts b/apps/cli/template/with-prisma-sqlite/packages/server/src/db/index.ts index 586ef17..d690901 100644 --- a/apps/cli/template/with-prisma-sqlite/packages/server/src/db/index.ts +++ b/apps/cli/template/with-prisma-sqlite/packages/server/src/db/index.ts @@ -3,7 +3,7 @@ import { PrismaLibSQL } from "@prisma/adapter-libsql"; import { createClient } from "@libsql/client"; const libsql = createClient({ - url: process.env.TURSO_DATABASE_URL, + url: process.env.TURSO_DATABASE_URL!, authToken: process.env.TURSO_AUTH_TOKEN, }); diff --git a/apps/cli/template/with-prisma-sqlite/packages/server/src/lib/auth.ts b/apps/cli/template/with-prisma-sqlite/packages/server/src/lib/auth.ts index e0bb658..f7dbe62 100644 --- a/apps/cli/template/with-prisma-sqlite/packages/server/src/lib/auth.ts +++ b/apps/cli/template/with-prisma-sqlite/packages/server/src/lib/auth.ts @@ -4,6 +4,6 @@ import prisma from "../db"; export const auth = betterAuth({ database: prismaAdapter(prisma, { - provider: "sqlite", // or "mysql", "postgresql", ...etc + provider: "sqlite", }), });