Full CRM rebuild with Next.js 15, TypeScript, Tailwind, Drizzle ORM, PostgreSQL, Redis, BullMQ, MinIO, and Socket.io. Includes 461 source files covering clients, berths, interests/pipeline, documents/EOI, expenses/invoices, email, notifications, dashboard, admin, and client portal. CI/CD via Gitea Actions with Docker builds. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
21 lines
455 B
TypeScript
21 lines
455 B
TypeScript
import { drizzle } from 'drizzle-orm/postgres-js';
|
|
import postgres from 'postgres';
|
|
|
|
import * as schema from './schema';
|
|
|
|
const connectionString = process.env.DATABASE_URL!;
|
|
|
|
// Connection pool for queries.
|
|
const queryClient = postgres(connectionString, {
|
|
max: 20,
|
|
idle_timeout: 20,
|
|
connect_timeout: 10,
|
|
});
|
|
|
|
export const db = drizzle(queryClient, {
|
|
schema,
|
|
logger: process.env.NODE_ENV === 'development',
|
|
});
|
|
|
|
export type Database = typeof db;
|