@ragrabbit/mcp

by madarco
Verified
import "dotenv/config"; import { drizzle } from "drizzle-orm/node-postgres"; import { drizzle as drizzleVercel } from "drizzle-orm/vercel-postgres"; import { sql as vercelSql, db as vercelDb, VercelPool } from "@vercel/postgres"; import { Pool } from "pg"; import * as schema from "./schema"; import { env } from "./env.mjs"; import { PostgresJsDatabase } from "drizzle-orm/postgres-js"; import { logger } from "@repo/logger"; let db: PostgresJsDatabase<typeof schema>; let pool: Pool | VercelPool; if (env.VERCEL) { db = drizzleVercel(vercelSql, { schema, casing: "snake_case" }); pool = vercelDb; logger.info({ context: "db" }, "Using Vercel Postgres"); } else { pool = new Pool({ connectionString: env.POSTGRES_URL, }); db = drizzle(pool, { schema, casing: "snake_case" }); logger.info({ context: "db" }, "Using local Postgres"); } export default db; export { pool }; export async function testDb() { return await (pool as VercelPool).query(`SELECT 1`); }