2.3 KiB
2.3 KiB
Deployment Guide - Multi-Project Firebase Setup
This project uses a multi-project Firebase setup where:
- Web App: Hosted on
sings-a-lotproject - Database & Functions: Hosted on
firebase-herseproject
Project Structure
sings-a-lot (webapp) ← Frontend hosting
firebase-herse (database) ← Database, Functions, Rules
Deployment Commands
Deploy Web App Only (to sings-a-lot)
npm run deploy:webapp
Deploy Database & Functions Only (to firebase-herse)
npm run deploy:database
Deploy Everything
npm run deploy:all
Manual Deployment Steps
1. Deploy Web App
# Build the app
npm run build
# Switch to webapp project
firebase use webapp
# Deploy hosting
firebase deploy --only hosting
2. Deploy Database & Functions
# Switch to database project
firebase use sings-a-lot-database
# Deploy database rules and functions
firebase deploy --only database,functions
Environment Configuration
Make sure your .env file points to the correct database project:
# These should point to firebase-herse (database project)
VITE_FIREBASE_API_KEY=your-api-key
VITE_FIREBASE_AUTH_DOMAIN=firebase-herse.firebaseapp.com
VITE_FIREBASE_DATABASE_URL=https://firebase-herse-default-rtdb.firebaseio.com
VITE_FIREBASE_PROJECT_ID=firebase-herse
VITE_FIREBASE_STORAGE_BUCKET=firebase-herse.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=123456789
VITE_FIREBASE_APP_ID=your-app-id
# App Configuration
VITE_CONTROLLER_NAME=default
VITE_APP_TITLE=SingSalot AI
Firebase Project Aliases
webapp→sings-a-lot(frontend hosting)sings-a-lot-database→firebase-herse(database, functions, rules)
Troubleshooting
If you get permission errors:
- Make sure you're logged into Firebase CLI:
firebase login - Check your project access:
firebase projects:list - Verify project aliases:
firebase use
If database connection fails:
- Check that your
.envfile points to the correct database project - Verify database rules are deployed to the correct project
- Check Firebase console for the correct project
If functions don't work:
- Make sure functions are deployed to the database project
- Check function logs:
firebase functions:log - Verify function configuration in
functions/src/index.ts