legendaryjs
Version:
LegendaryJS – The ultimate backend framework for speed, power, and simplicity.
45 lines (39 loc) • 1.27 kB
JavaScript
const mongoose = require('mongoose');
const { Pool } = require('pg');
const mysql = require('mysql2/promise');
const config = require('../legendary.config');
const connections = {};
async function connectDatabases() {
if (config.db.mongo) {
try {
await mongoose.connect(config.db.mongoURI, {
useNewUrlParser: true,
useUnifiedTopology: true
});
connections.mongo = mongoose;
console.log('✅ MongoDB connected');
} catch (err) {
console.error('❌ MongoDB connection failed:', err.message);
}
}
if (config.db.postgres) {
try {
const pgPool = new Pool({ connectionString: config.db.postgresURI });
connections.postgres = pgPool;
await pgPool.connect();
console.log('✅ PostgreSQL connected');
} catch (err) {
console.error('❌ PostgreSQL connection failed:', err.message);
}
}
if (config.db.mysql) {
try {
const mysqlConn = await mysql.createConnection(config.db.mysqlURI);
connections.mysql = mysqlConn;
console.log('✅ MySQL connected');
} catch (err) {
console.error('❌ MySQL connection failed:', err.message);
}
}
}
module.exports = { connectDatabases, connections };