Sitemap
Ayda Nil Ozyurek

Ayda Nil Ozyurek

Flutter-focused mobile developer.

Press enter or click to view image in full size

Setting Up Firebase in a Flutter App on macOS (Real Errors & Fixes)

3 min readFeb 9, 2026

--

If you’re integrating Firebase into a Flutter project on macOS and you want a simple, reliable checklist, this is the exact path I followed while setting up Firebase for my app.

This is intentionally practical: I’m including the real issues I encountered (and how I fixed them), because those are usually what slows you down.

What You’ll End Up With

By the end, you’ll have:

  • A Firebase project connected to your Flutter app
  • firebase_options.dart generated and ready
  • iOS + Android registered
  • The app running successfully on an iOS simulator
  • A clean fix for the iOS deployment target Firebase requires

Step 1 — Create a Firebase Project

Go to Firebase Console and create a new project.
You don’t need to enable every feature yet—just create the project.

Step 2 — Install Firebase CLI (Fix: “firebase: command not found”)

My first command was:

firebase login

…and I got:

zsh: command not found: firebase

That means the Firebase CLI isn’t installed. On macOS, the easiest way is Homebrew:

brew install firebase-cli

Then verify:

firebase --version

Now login works:

firebase login

Step 3 — Install FlutterFire CLI (Fix: “flutterfire not found”)

Firebase CLI is not the same as FlutterFire CLI. FlutterFire is the tool that generates Flutter platform config and firebase_options.dart.

Get Ayda Nil Ozyurek’s stories in your inbox

Join Medium for free to get updates from this writer.

Install it:

dart pub global activate flutterfire_cli

If your terminal can’t find flutterfire, add pub cache to PATH:

export PATH="$PATH":"$HOME/.pub-cache/bin"

To make it permanent (so you don’t repeat this every time):

echo 'export PATH="$PATH":"$HOME/.pub-cache/bin"' >> ~/.zshrc
source ~/.zshrc

Check:

flutterfire --version

Step 4 — Configure Firebase for Your Flutter App

In your Flutter project root:

flutterfire configure

During setup:

  • Select your Firebase project
  • Select android and ios
  • Let the CLI register apps and generate config

After this, you should have:

  • lib/firebase_options.dart
  • Android config (google-services.json)
  • iOS config (GoogleService-Info.plist)

Step 5 — Add Firebase Core + Initialize Firebase in main.dart

Add the dependency:

flutter pub add firebase_core

Then initialize Firebase before running the app:

import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(const App());
}

If you also use dependency injection, initialize Firebase before initDependencies().

Step 6 — Fix iOS Build Error: “requires a higher minimum iOS deployment version”

When I tried to run on iOS, I hit:

The plugin “firebase_core” requires a higher minimum iOS deployment version…
increase deployment target to at least 15.0

So I updated the iOS deployment target to 15.0.

Update ios/Podfile

My Podfile had the platform line commented out (or set lower). I changed it to:

platform :ios, '15.0'

Then I forced all pods to use 15.0 inside post_install:

post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0'
end
end
end

Clean & reinstall pods

From the project root:

flutter clean
rm -rf ios/Pods ios/Podfile.lock
flutter pub get
cd ios
pod install
cd ..

Step 7 — Fix “No Podfile found” (Wrong directory)

At one point I ran:

pod install

and got:

No Podfile found in the project directory.

That was simply because I ran it in the project root, not inside ios/.

Correct command:

cd ios
pod install
cd ..

This was my complete Firebase setup process for a Flutter app on macOS, including the real errors I ran into and how I fixed them.
Hopefully, this saves you some time when setting things up in your own project.

--

Ayda Nil Ozyurek
Ayda Nil Ozyurek

Written by Ayda Nil Ozyurek

Flutter-focused mobile developer.