import dotenv from "dotenv"; import { Sequelize } from "sequelize"; import { registerModels } from "./register-models"; dotenv.config(); export const sequelize = new Sequelize( process.env.DB_NAME as string, process.env.DB_USER as string, process.env.DB_PASSWORD as string, { host: process.env.DB_HOST as string, dialect: "mariadb", port: parseInt(process.env.DB_PORT || "3306", 10), logging: process.env.DB_LOGGING === "true" ? console.log : false, pool: { max: 10, min: 0, acquire: 30000, idle: 10000, }, } ); export async function connectToDatabase(): Promise { try { await registerModels(); await sequelize.authenticate(); console.log("✅ Database connection established successfully."); } catch (error) { console.error("❌ Unable to connect to the database:", error); process.exit(1); } }