
Firebase Basics
Wire a new Android app to Firebase from project create through google-services.json using firebase-tools CLI steps.
Overview
Firebase-basics is an agent skill for the Build phase that provisions Firebase cloud project and Android app config via firebase-tools CLI.
Install
npx skills add https://github.com/firebase/agent-skills --skill firebase-basicsWhat is this skill?
- Stepwise CLI: firebase login, projects:create, apps:create ANDROID, apps:sdkconfig download
- Covers unique project ID, package name, display names, and saving google-services.json
- Prerequisites call out firebase-tools via npx and authentication including headless login option
- Includes manual verification plan after config is in place
- Assumes Android application module already exists or must be created first
- Four main CLI setup steps after prerequisites
- Uses npx -y firebase-tools@latest for commands
Adoption & trust: 76.3k installs on skills.sh; 345 GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You have an Android app but no Firebase project, app registration, or google-services.json in the right place.
Who is it for?
Indie developers adding Firebase to an existing or new Android module who want copy-paste CLI setup with firebase-tools.
Skip if: iOS-only Firebase setup, serverless web-only Firebase without Android, or production hardening without reading Firebase security guidance separately.
When should I use this skill?
User is setting up Firebase for Android, needs google-services.json, or asks for Firebase project and app registration from CLI.
What do I get? / Deliverables
You get a linked Firebase project, registered Android app, and google-services.json ready for SDK initialization and manual verification.
- Firebase cloud project
- Registered Android app
- google-services.json in app module
Recommended Skills
Journey fit
How it compares
CLI setup runbook for Android Firebase, not a managed BaaS comparison or full Auth/Firestore implementation skill.
Common Questions / FAQ
Who is firebase-basics for?
Solo builders shipping Android apps who need Firebase project and config file setup from the terminal.
When should I use firebase-basics?
During Build integrations when you are connecting an Android package to Firebase for the first time or recreating google-services.json.
Is firebase-basics safe to install?
Review Security Audits on this page; the skill instructs firebase login and project commands that touch your Google account and cloud resources.
SKILL.md
READMESKILL.md - Firebase Basics
# 🛠️ Firebase Android Setup Guide --- ## 📋 Prerequisites Before running these commands, ensure you are authenticated: `npx -y firebase-tools@latest login` (or `npx -y firebase-tools@latest login --no-localhost` on remote servers) --- ## 0. Create an Android application if you haven't already created an android application, create one. ## 1. Create a Firebase Project If you haven't already created a project, create a new cloud project with a unique ID: `npx -y firebase-tools@latest projects:create <UNIQUE_PROJECT_ID> --display-name '<DISPLAY_NAME>'` *Example:* `npx -y firebase-tools@latest projects:create my-cool-app-20260330 --display-name 'MyCoolApp'` ### 2. Register Your Android App Link your Android app module (package name) to your project. Notice that the display name is passed as a positional argument at the end: `npx -y firebase-tools@latest apps:create ANDROID '<APP_DISPLAY_NAME>' --package-name '<PACKAGE_NAME>' --project <PROJECT_ID>` *Example:* `npx -y firebase-tools@latest apps:create ANDROID 'MyApplication' --package-name 'com.example.myapplication' --project my-cool-app-20260330` ### 3. Download `google-services.json` Fetch the configuration file using the App ID (which is printed in the output of the previous command): `npx -y firebase-tools@latest apps:sdkconfig ANDROID <APP_ID> --project <PROJECT_ID>` *Example output extraction to file:* ` # (Output must be saved as app/google-services.json)` --- ## ✅ Verification Plan ### Manual Verification Validate that the project was created and registered successfully: `npx -y firebase-tools@latest projects:list` `npx -y firebase-tools@latest apps:list --project <PROJECT_ID>` --- # Exploring Commands The Firebase CLI documents itself. Use help commands to discover functionality. - **Global Help**: List all available commands and categories. ```bash npx -y firebase-tools@latest --help ``` - **Command Help**: Get detailed usage for a specific command. ```bash npx -y firebase-tools@latest [command] --help # Example: npx -y firebase-tools@latest deploy --help npx -y firebase-tools@latest firestore:indexes --help ``` # Initialization Before initializing, check if you are already in a Firebase project directory by looking for `firebase.json`. 1. **Project Directory:** Navigate to the root directory of the codebase. *(Only if starting a completely new project from scratch without an existing codebase, create a directory first: `mkdir my-project && cd my-project`)* 2. **Initialize Services:** Run the initialization command: ```bash npx -y firebase-tools@latest init ``` The CLI will guide you through: - Selecting features (Firestore, Functions, Hosting, etc.). - Associating with an existing project or creating a new one. - Configuring files (e.g. `firebase.json`, `.firebaserc`). # Flutter & Firebase Setup Guide This guide covers the initial setup of Flutter and its integration with Firebase using the FlutterFire CLI. ## Prerequisites 1. **Flutter SDK**: Ensure Flutter is installed and available in the PATH. **Standard Setup (Manual):** 1. **Determine Architecture**: Check if you are on Intel (`x64`) or Apple Silicon (`arm64`) using `uname -m`. 2. **Download SDK**: Fetch the latest stable SDK from the [Flutter Archive](https://docs.flutter.dev/install/archive?tab=macos). 3. **Extract**: Unzip the SDK to a permanent directory (e.g., `~/development/flutter`). 4. **Update PATH**: Add the `bin` folder to your shell configuration (e.g., `~/.zshrc`). ```bash echo 'export PATH="$PATH:$HOME/development/flutter/bin"' >> ~/.zshrc source ~/.zshrc ``` 5. **Verify**: Run `flutter doctor` to ensure the SDK is correctly linked and initialized. 2. **Firebase CLI**: Ensure the Firebase CLI is available. - Run `npx -y firebase-tools@latest --version`. - Login with `npx -y firebase-tools@latest login`. 3. **FlutterFire CLI**: Install the official FlutterFire CLI globally. - Run `dart pu