Step 1 of 7
Create Firebase Project & Obtain Credentials
Provide the cloud messaging service and keys needed for both client and server.
The existing app is a React Native front‑end with a Node/Express backend and PostgreSQL. No Firebase config exists yet.
1. Log in to Firebase console and create a new project named after the existing app. 2. In the project settings, add an Android app (package ID from the React Native app) and download the generated google-services.json file. 3. Copy the web app config (apiKey, authDomain, projectId, storageBucket, messagingSenderId, appId) into a JSON snippet. 4. In Cloud Messaging settings, locate the Server key (legacy) and the Sender ID. 5. Return a JSON object containing: { "googleServicesFile": "<base64‑encoded google-services.json>", "firebaseConfig": {…}, "serverKey": "<FCM Server Key>", "senderId": "<Messaging Sender ID>" } No placeholders; include real base64 content and keys.
Expected after this step
A JSON file with real Firebase credentials ready for integration.
Should not happen
- ✕AI returns placeholder keys or dummy JSON instead of real Firebase credentials.
- ✕Missing or incorrect modifications to Android build.gradle causing compile errors.
- ✕Client code skips the network request or uses a mock URL.
- ✕Backend route does not validate auth or lacks ON CONFLICT handling, leading to duplicate token errors.
Verify before continuing
Do not move on until every check is true. The complete button stays locked until then.
Do not continue if…
- !AI returns placeholder keys or dummy JSON instead of real Firebase credentials.
- !Missing or incorrect modifications to Android build.gradle causing compile errors.
- !Client code skips the network request or uses a mock URL.
- !Backend route does not validate auth or lacks ON CONFLICT handling, leading to duplicate token errors.
- !Push sender uses a fake FCM endpoint or omits the Authorization header.
- !Admin UI lacks proper navigation entry or does not display response.
If the AI messes this up
Use this when the AI fakes progress or breaks the feature. It forces a real fix.
The previous output contained placeholders or missing fields. Provide the exact Firebase credentials as specified, ensuring no dummy data.