โ† Back to API Keys Hub
๐Ÿ”ฅ Internal Reference

Firebase Project Setup

How to create an isolated Firebase project for a Premium client, upgrade to Blaze, and wire push notifications, RTDB, and VAPID keys into their app.

Client isolation is mandatory. Every client gets their own Firebase project. NEVER add a client app to applanta-ed830 or any other client's project. One client, one project, full stop.

1
Go to console.firebase.google.com

Sign in with dev@applanta.app โ†’ click Add project.

2
Name the project

Use the client's business slug โ€” e.g., faith-decor-catering. Short, lowercase, hyphens only. Click Continue.

3
Disable Google Analytics (unless client needs it)

Toggle off Google Analytics unless the client specifically requested it. Simplifies the setup. Click Create project โ†’ wait ~30 seconds.

4
Upgrade to Blaze (pay-as-you-go)

In the project dashboard โ†’ click Spark in the bottom-left โ†’ Upgrade to Blaze โ†’ enter billing info โ†’ Confirm. Required for Cloud Functions v2.

Cost: $0/mo on free-tier usage. A single client app with normal traffic won't exceed free limits. Firebase only charges if usage spikes significantly โ€” which won't happen for a local small business app.

5
Build โ†’ Realtime Database โ†’ Create database

Left sidebar โ†’ Build โ†’ Realtime Database โ†’ Create database โ†’ select location: us-central1 โ†’ Start in test mode โ†’ Enable.

6
Note the database URL

It will look like https://[project-id]-default-rtdb.firebaseio.com. Save this โ€” it goes in the app's Firebase config.

7
Project Settings โ†’ Cloud Messaging โ†’ Web Push certificates

Click the gear icon (top-left) โ†’ Project Settings โ†’ Cloud Messaging tab โ†’ scroll to "Web Push certificates" โ†’ click Generate key pair.

8
Copy the VAPID public key

Copy the key pair value that appears โ€” this is the VAPID public key. Save it to the client folder. It goes in the app's service worker and push subscription code.

9
Register a Web App

Project Settings โ†’ General โ†’ scroll to "Your apps" โ†’ click </> (Web) โ†’ register app with the client's business name โ†’ click Register app.

10
Copy the firebaseConfig object

The config object will appear โ€” copy the entire block including apiKey, authDomain, databaseURL, projectId, storageBucket, messagingSenderId, appId. This is safe to include in front-end HTML.

11
Project Settings โ†’ Service accounts โ†’ Generate new private key

Click gear โ†’ Project Settings โ†’ Service accounts tab โ†’ click Generate new private key โ†’ confirm โ†’ download the JSON file.

12
Save the service account JSON securely

Save immediately to: OneDrive/Client-Builds/[BusinessName]/firebase-service-account.json
This file grants admin access to the Firebase project. Never put it in the app's HTML or any public location.

13
Open the client's app build session

Open the client's app in Claude Code โ†’ paste the firebaseConfig object โ†’ paste the VAPID key โ†’ Claude wires push subscriptions, RTDB reads/writes, and service worker into the app.

14
Deploy the Cloud Functions to this project

Copy the Applanta push notification Cloud Functions template โ†’ update the project references โ†’ deploy with: firebase deploy --only functions --project [project-id]

15
Test push notifications end-to-end

Open the app on a real device โ†’ accept push permissions โ†’ trigger a test notification from the Firebase console โ†’ confirm it arrives on the device.

Powered by Applanta Solutions ยท Internal Reference Only