diff --git a/firebase-config.js b/firebase-config.js index db3f00e..9276424 100644 --- a/firebase-config.js +++ b/firebase-config.js @@ -1,24 +1,25 @@ const admin = require('firebase-admin'); -require("dotenv").config(); -const serviceAccount = JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT); -try { - admin.initializeApp({ - credential: admin.credential.cert(serviceAccount), - databaseURL: "https://YOUR_PROJECT_ID.firebaseio.com" // Add this line - }); - - console.log('Firebase initialized successfully'); -} catch (error) { - console.error('Firebase initialization error:', error); - process.exit(1); // Exit if Firebase fails to initialize +let db; + +if (!admin.apps.length) { + try { + const serviceAccount = JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT); + + admin.initializeApp({ + credential: admin.credential.cert(serviceAccount), + // databaseURL is optional unless you use Realtime Database + }); + + db = admin.firestore(); + console.log('✅ Firebase Admin initialized'); + + } catch (error) { + console.error('❌ Firebase initialization error:', error); + throw new Error('Failed to initialize Firebase Admin SDK'); + } +} else { + db = admin.firestore(); } -const db = admin.firestore(); - -// Test connection -db.collection('users').get() - .then(() => console.log('Firestore connection successful')) - .catch(err => console.error('Firestore connection error:', err)); - module.exports = db;