feat: upgrade to node 24 and drizzle

This commit is contained in:
Aarnav Tale
2026-03-17 13:22:48 -04:00
parent dd0587dad1
commit b1361e9062
20 changed files with 1593 additions and 1094 deletions
+25 -23
View File
@@ -1,28 +1,30 @@
import { mkdir } from 'node:fs/promises';
import { dirname, resolve } from 'node:path';
import { migrate } from 'drizzle-orm/libsql/migrator';
import { drizzle } from 'drizzle-orm/libsql/sqlite3';
import log from '~/utils/log';
import { mkdir } from "node:fs/promises";
import { dirname, resolve } from "node:path";
import { drizzle } from "drizzle-orm/node-sqlite";
import { migrate } from "drizzle-orm/node-sqlite/migrator";
import log from "~/utils/log";
export async function createDbClient(path: string) {
const realPath = resolve(path);
try {
await mkdir(dirname(realPath), { recursive: true });
} catch (error) {
log.error(
'server',
'Failed to create directory for database at %s: %s',
realPath,
error instanceof Error ? error.message : String(error),
);
throw new Error(`Could not create directory for database at ${realPath}`);
}
const realPath = resolve(path);
try {
await mkdir(dirname(realPath), { recursive: true });
} catch (error) {
log.error(
"server",
"Failed to create directory for database at %s: %s",
realPath,
error instanceof Error ? error.message : String(error),
);
throw new Error(`Could not create directory for database at ${realPath}`);
}
// Turn the path into a URL with the file protocol
const db = drizzle(`file://${realPath}`);
migrate(db, {
migrationsFolder: './drizzle',
});
// Turn the path into a URL with the file protocol
const db = drizzle(`file://${realPath}`);
migrate(db, {
migrationsFolder: "./drizzle",
});
return db;
return db;
}