Firebase Project Creation
A Firebase project is the container for everything your app needs — its database, its users, its files, and its functions. Creating a project takes about two minutes. This topic walks through each step and explains what each choice means so you understand what you are setting up.
The Project as a Container
Imagine a physical office building. The building has rooms for accounting, customer service, storage, and IT. A Firebase project works the same way — it is the building, and each Firebase service is a room inside it. All the rooms share the same address (your project ID), and nothing leaks between buildings (projects).
[ Firebase Project: my-blog-app ] | |-- Room 1: Authentication (your users) |-- Room 2: Firestore (your posts and comments) |-- Room 3: Storage (your images) |-- Room 4: Hosting (your live website) |-- Room 5: Functions (your automated tasks)
Step 1 — Open the Console and Click Add Project
Go to console.firebase.google.com. If you have no projects yet, a large card reads Add project. If you already have projects, a smaller Add project tile appears alongside them. Click it.
Step 2 — Name Your Project
Firebase asks for a project name. Type a descriptive name like my-blog-app or task-manager-prod. Firebase generates a project ID based on this name by converting it to lowercase and adding random numbers to make it globally unique.
The project ID becomes part of your app's default URLs. For example, if your project ID is my-blog-12345, your default hosting URL becomes my-blog-12345.web.app. You can customize the ID before clicking Continue, but you cannot change it after the project is created.
Naming Tips
- Use clear names that describe the app, not the company or team
- Add -dev or -prod to distinguish development projects from live ones
- Avoid generic names like test or app1 — they become confusing fast
Step 3 — Google Analytics Prompt
Firebase asks whether you want to enable Google Analytics for the project. For most apps, enabling it is a good idea. Analytics tracks how users use your app — which screens they visit, where they drop off, and which features they use most.
If you are building a quick test project or a private internal tool, you can skip Analytics. For any app that will have real users, turn it on. It costs nothing extra.
Step 4 — Analytics Account
If you enabled Analytics, Firebase asks you to link it to a Google Analytics account. If you do not have one, select Create a new account from the dropdown. Firebase sets it up automatically. Click Create project.
Firebase spends a few seconds setting up your project. A progress animation plays. When it finishes, click Continue.
You Are Inside the Project
The console now shows your new project's homepage. The left sidebar displays all available Firebase services. Nothing is activated yet — you turn on each service as you need it. This keeps the project clean and your bill at zero until you actually use something.
Adding Your App to the Project
A Firebase project can support multiple apps — a web app, an Android app, and an iOS app can all belong to the same project and share the same database and users. This is powerful for teams building cross-platform products.
To add a web app, click the web icon (</>) on the project homepage. Firebase asks for a nickname — this is just a label for you to identify the app in the console. Check the Firebase Hosting box if you want to deploy the app to Firebase's servers.
The Configuration Object
After registering your app, Firebase shows you a configuration object — a block of JavaScript code containing your project's connection details. Copy it. You paste this into your web app's code to connect it to Firebase.
// Your app's Firebase configuration
const firebaseConfig = {
apiKey: "AIzaSy_your_key_here",
authDomain: "my-blog-12345.firebaseapp.com",
projectId: "my-blog-12345",
storageBucket: "my-blog-12345.appspot.com",
messagingSenderId: "987654321",
appId: "1:987654321:web:abcdef123456"
};
Each field tells Firebase something specific about your app:
- apiKey — identifies your app to Firebase's public-facing APIs
- authDomain — the domain Firebase uses for authentication pop-ups
- projectId — your unique project identifier
- storageBucket — where Firebase stores your uploaded files
- messagingSenderId — used for push notifications
- appId — identifies this specific app within the project
Development vs Production Projects
Experienced developers create two separate Firebase projects for the same application — one for development (testing) and one for production (live users). This keeps test data separate from real user data and prevents accidental deletions from affecting real users.
[ task-manager-dev ] [ task-manager-prod ] | | |-- Test users |-- Real users |-- Fake data |-- Real data |-- Experimental rules |-- Locked-down rules
You switch between them by using different configuration objects in your code, usually managed with environment variables.
Deleting a Project
You can delete a Firebase project from Project Settings at the very bottom of the page. Deletion is permanent — all data, users, files, and functions in the project are erased. Firebase asks you to type the project ID to confirm before deleting, which prevents accidents.
Key Takeaway
Creating a Firebase project takes a few clicks and produces a container that holds every service your app needs. The project ID and configuration object connect your code to Firebase. For any real application, create separate projects for development and production to protect your users' data from test activity.
