27 lines
1.0 KiB
TypeScript
27 lines
1.0 KiB
TypeScript
import { initializeApp } from 'firebase/app'
|
|
import { getAuth } from 'firebase/auth'
|
|
import { getFirestore } from 'firebase/firestore'
|
|
|
|
// Use environment variables or fallback for dev (though env variables are preferred)
|
|
// In a real setup, these should be injected via VITE_FIREBASE_CONFIG or individual keys.
|
|
const firebaseConfig = {
|
|
apiKey: import.meta.env.VITE_FIREBASE_API_KEY,
|
|
authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN,
|
|
projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID,
|
|
storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET,
|
|
messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID,
|
|
appId: import.meta.env.VITE_FIREBASE_APP_ID
|
|
}
|
|
|
|
// Initialize Firebase safely
|
|
export let auth: ReturnType<typeof getAuth> | null = null;
|
|
export let db: ReturnType<typeof getFirestore> | null = null;
|
|
|
|
if (firebaseConfig.apiKey) {
|
|
const app = initializeApp(firebaseConfig)
|
|
auth = getAuth(app)
|
|
db = getFirestore(app)
|
|
} else {
|
|
console.warn("⚠️ Firebase API Key missing. Firebase features are disabled.")
|
|
}
|