import pg from 'pg'; import dotenv from 'dotenv'; dotenv.config(); const { Pool } = pg; // Database connection configuration export const pool = new Pool({ host: process.env.DB_HOST, port: process.env.DB_PORT, user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, }); // Test database connection export async function testConnection() { try { const client = await pool.connect(); console.log('✅ Database connected successfully'); client.release(); return true; } catch (error) { console.error('❌ Database connection failed:', error.message); return false; } } // Execute a query export async function query(text, params) { const start = Date.now(); const res = await pool.query(text, params); const duration = Date.now() - start; console.log('Executed query', { text, duration, rows: res.rowCount }); return res; } // Close the pool export async function closePool() { await pool.end(); console.log('Database connection pool closed'); }