Rename database environment variables for consistency

This commit is contained in:
Aman Varshney
2025-04-09 08:42:23 +05:30
parent 33a43fcf14
commit 7504d2734f
10 changed files with 23 additions and 26 deletions

View File

@@ -0,0 +1,5 @@
---
"create-better-t-stack": patch
---
Rename database environment variables for consistency

View File

@@ -56,8 +56,8 @@ export async function setupEnvironmentVariables(
}
if (options.database === "sqlite" && options.dbSetup !== "turso") {
if (!envContent.includes("TURSO_CONNECTION_URL")) {
envContent += "\nTURSO_CONNECTION_URL=file:./local.db";
if (!envContent.includes("DATABASE_URL")) {
envContent += "\nDATABASE_URL=file:./local.db";
}
}
}

View File

@@ -104,11 +104,6 @@ function getDatabaseInstructions(
instructions.push(`${pc.cyan("•")} Apply schema: ${`${runCmd} db:push`}`);
instructions.push(`${pc.cyan("•")} Database UI: ${`${runCmd} db:studio`}`);
} else if (orm === "drizzle") {
if (database === "sqlite") {
instructions.push(
`${pc.cyan("•")} Start local DB: ${`cd apps/server && ${runCmd} db:local`}`,
);
}
instructions.push(`${pc.cyan("•")} Apply schema: ${`${runCmd} db:push`}`);
instructions.push(`${pc.cyan("•")} Database UI: ${`${runCmd} db:studio`}`);
}

View File

@@ -157,10 +157,10 @@ async function createTursoDatabase(
async function writeEnvFile(projectDir: string, config?: TursoConfig) {
const envPath = path.join(projectDir, "apps/server", ".env");
const envContent = config
? `TURSO_CONNECTION_URL="${config.dbUrl}"
TURSO_AUTH_TOKEN="${config.authToken}"`
: `TURSO_CONNECTION_URL=
TURSO_AUTH_TOKEN=`;
? `DATABASE_URL="${config.dbUrl}"
DATABASE_AUTH_TOKEN="${config.authToken}"`
: `DATABASE_URL=
DATABASE_AUTH_TOKEN=`;
await fs.writeFile(envPath, envContent);
}
@@ -173,8 +173,8 @@ function displayManualSetupInstructions() {
3. Get your database URL and authentication token
4. Add these credentials to the .env file in apps/server/.env
TURSO_CONNECTION_URL=your_database_url
TURSO_AUTH_TOKEN=your_auth_token`);
DATABASE_URL=your_database_url
DATABASE_AUTH_TOKEN=your_auth_token`);
}
export async function setupTurso(

View File

@@ -19,17 +19,17 @@ export async function getDatabaseChoice(
{
value: "sqlite",
label: "SQLite",
hint: "by Turso",
hint: "lightweight, server-less, embedded relational database management system",
},
{
value: "postgres",
label: "PostgreSQL",
hint: "Traditional relational database",
hint: "powerful, open source object-relational database system",
},
{
value: "mongodb",
label: "MongoDB",
hint: "NoSQL document-oriented database",
hint: "open-source NoSQL database that stores data in JSON-like documents called BSON",
},
],
initialValue: DEFAULT_CONFIG.database,

View File

@@ -22,7 +22,7 @@ export async function getORMChoice(
{
value: "drizzle",
label: "Drizzle",
hint: "Type-safe, lightweight ORM",
hint: "lightweight and performant TypeScript ORM",
},
{
value: "prisma",

View File

@@ -21,10 +21,7 @@ function validateDirectoryName(name: string): string | undefined {
if (name.startsWith(".") || name.startsWith("-")) {
return "Project name cannot start with a dot or dash";
}
if (
name.toLowerCase() === "node_modules" ||
name.toLowerCase() === "favicon.ico"
) {
if (name.toLowerCase() === "node_modules") {
return "Project name is reserved";
}
return undefined;

View File

@@ -12,7 +12,7 @@ export function generateReproducibleCommand(config: ProjectConfig): string {
flags.push(`--orm ${config.orm}`);
}
if (config.dbSetup && config.dbSetup !== "none") {
if (config.dbSetup) {
flags.push(`--db-setup ${config.dbSetup}`);
}
}

View File

@@ -5,7 +5,7 @@ export default defineConfig({
out: "./src/db/migrations",
dialect: "turso",
dbCredentials: {
url: process.env.TURSO_CONNECTION_URL || "",
authToken: process.env.TURSO_AUTH_TOKEN,
url: process.env.DATABASE_URL || "",
authToken: process.env.DATABASE_AUTH_TOKEN,
},
});

View File

@@ -2,8 +2,8 @@ import { drizzle } from "drizzle-orm/libsql";
import { createClient } from "@libsql/client";
const client = createClient({
url: process.env.TURSO_CONNECTION_URL || "",
authToken: process.env.TURSO_AUTH_TOKEN,
url: process.env.DATABASE_URL || "",
authToken: process.env.DATABASE_AUTH_TOKEN ,
});
export const db = drizzle({ client });