initialize git, basic setup for crm

This commit is contained in:
richardtekula
2025-11-18 13:53:28 +01:00
commit da01d586fc
47 changed files with 12776 additions and 0 deletions

32
src/config/database.js Normal file
View File

@@ -0,0 +1,32 @@
import { drizzle } from 'drizzle-orm/node-postgres';
import pkg from 'pg';
const { Pool } = pkg;
import * as schema from '../db/schema.js';
// PostgreSQL connection pool
const pool = new Pool({
host: process.env.DB_HOST || 'localhost',
port: parseInt(process.env.DB_PORT || '5432'),
user: process.env.DB_USER || 'admin',
password: process.env.DB_PASSWORD || 'heslo123',
database: process.env.DB_NAME || 'crm',
max: 20, // maximum number of connections in pool
idleTimeoutMillis: 30000,
connectionTimeoutMillis: 2000,
});
// Test database connection
pool.on('connect', () => {
console.log('✅ Database connected successfully');
});
pool.on('error', (err) => {
console.error('❌ Unexpected database error:', err);
process.exit(-1);
});
// Initialize Drizzle ORM with schema
export const db = drizzle(pool, { schema });
// Export pool for direct access if needed
export { pool };