Error: No Firebase App '[DEFAULT]' has been created – call Firebase App.initializeApp()

I have a firebase database linked up to two apps, one being an iOS app and another being a web app coded in node.js which is a basic algorithm that sets data to the database. When ever i am running the algorithm i am confronted with-

Error: No Firebase App ‘[DEFAULT]’ has been created – call Firebase
App.initializeApp().

at Error (native)
at R (/Users/dd/Desktop/Code/NODE/node_modules/firebase/app-node.js:22:335)
at a (/Users/dd/Desktop/Code/NODE/node_modules/firebase/app-node.js:20:68)
at Object.c [as database] (/Users/dd/Desktop/Code/NODE/node_modules/firebase/app-node.js:21:447)
at Object. (/Users/dd/Desktop/Code/NODE/Bot.js:24:25)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.runMain (module.js:604:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:149:9)
at bootstrap_node.js:509:3 dd-mac:NODE dd$

Could someone please help?

10 thoughts on “Error: No Firebase App '[DEFAULT]' has been created – call Firebase App.initializeApp()”

  1. This may not be best answer but, I had to initialize app with admin and firebase like below. I use admin for it’s own purposes and firebase as well.

    const firebase = require("firebase");
    const admin = require("firebase-admin");
    
    admin.initializeApp(functions.config().firebase);
    firebase.initializeApp(functions.config().firebase);
    // Get the Auth service for the default app
    var authService = firebase.auth();
    
     function createUserWithEmailAndPassword(request, response) {
            const email = request.query.email;
            const password = request.query.password;
            if (!email) {
                response.send("query.email is required.");
                return;
            }
            if (!password) {
                response.send("query.password is required.");
                return;
            }
            return authService.createUserWithEmailAndPassword(email, password)
                .then(success => {
                    let responseJson = JSON.stringify(success);
                    console.log("createUserWithEmailAndPassword.responseJson", responseJson);
                    response.send(responseJson);
                })
                .catch(error => {
                    let errorJson = JSON.stringify(error);
                    console.log("createUserWithEmailAndPassword.errorJson", errorJson);
                    response.send(errorJson);
                });
        }
    
    Reply
  2. You are probably invoking firebase before the app is initialized. All calls to firebase. must come after .initializeApp();

    firebase.initializeApp(config);
    var db = firebase.firestore();
    
    Reply
  3. Complete tutorial source link

    Use initializeApp before @NgModule

    import { NgModule } from '@angular/core';
    import { BrowserModule } from '@angular/platform-browser';
    import { RouteReuseStrategy } from '@angular/router';
    
    import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
    import { SplashScreen } from '@ionic-native/splash-screen/ngx';
    import { StatusBar } from '@ionic-native/status-bar/ngx';
    
    import { AppComponent } from './app.component';
    import { AppRoutingModule } from './app-routing.module';
    import { environment } from 'src/environments/environment';
    import { AuthenticateService } from './services/authentication.service';
    import { AngularFireAuthModule } from '@angular/fire/auth';
    
    import * as firebase from 'firebase';
    
    firebase.initializeApp(environment.firebase);
    
    @NgModule({
      declarations: [AppComponent],
      entryComponents: [],
      imports: [
        BrowserModule, 
        IonicModule.forRoot(), 
        AppRoutingModule,
        AngularFireAuthModule
      ],
      providers: [
        StatusBar,
        SplashScreen,
        AuthenticateService,
        { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
      ],
      bootstrap: [AppComponent]
    })
    export class AppModule {}
    
    Reply
  4. add async in main()

    and await before

    follow my code

    void main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      runApp(MyApp());
    }
    
    class MyApp extends StatelessWidget {
      var fsconnect = FirebaseFirestore.instance;
    
      myget() async {
        var d = await fsconnect.collection("students").get();
        // print(d.docs[0].data());
    
        for (var i in d.docs) {
          print(i.data());
        }
      }
    
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
            home: Scaffold(
          appBar: AppBar(
            title: Text('Firebase Firestore App'),
          ),
          body: Column(
            children: <Widget>[
              RaisedButton(
                child: Text('send data'),
                onPressed: () {
                  fsconnect.collection("students").add({
                    'name': 'sarah',
                    'title': 'xyz',
                    'email': 'sarah@gmail.com',
                  });
                  print("send ..");
                },
              ),
              RaisedButton(
                child: Text('get data'),
                onPressed: () {
                  myget();
                  print("get data ...");
                },
              )
            ],
          ),
        ));
      }
    }
    
    Reply
  5. The answer may already be given somewhere but here is my take to this error which may be thrown for multiple reasons:

    1. Default app is initialized after the other one. Correct way is to initialize the default app first and then the rest.
    2. firebase.apps.app() is being called before default app initialization. This code is basically returning the default app instance. Since it is not present, hence the error.
    3. Lastly, you are initializing other firebase services like auth, database, firestore, etc before app is initialized.
    Reply
  6. My problem was because I added a second parameter:

    AngularFireModule.initializeApp(firebaseConfig, 'reservas')
    

    if I remove the second parameter it works fine:

    AngularFireModule.initializeApp(firebaseConfig)
    
    Reply
  7. Flutter web

    For me the error occurred when I run my application in "release" mode

    flutter run -d chrome --release

    and when I deployed the application on the Firebase hosting

    firebase deploy

    Solution

    Since I initialized Firebase in the index.html, I had to change the implementation order of firebase and main.dart.js

    <script>
      var firebaseConfig = {
      apiKey: "xxxxxxxxxxxxxxxxxxxxxx",
      authDomain: "xxxxxxxxxxx.firebaseapp.com",
      databaseURL: "https://xxxxxxxxxx.firebaseio.com",
      projectId: "xxxxxxxxxxx",
      storageBucket: "xxxxxxxx.appspot.com",
      messagingSenderId: "xxxxxxxxxxx",
      appId: "1:xxxxxxxxxx:web:xxxxxxxxxxxxx",
      measurementId: "G-xxxxxxxxx"
      };
      // Initialize Firebase
      firebase.initializeApp(firebaseConfig);
      firebase.analytics();
    </script>
    
    //moved below firebase init
    <script src="main.dart.js" type="application/javascript"></script>
    
    Reply
  8. I think This Error is Arrived Because of You are using Class Component in Respective React Platform that Doesn’t get Proper Configuration.
    So You Write Configuration in componentWillMount().

    componetWillMount() {
    const config = {
    apiKey: “xxxxxxxxxxxxxxxxxxxxxxxx”,
    authDomain: “auth-bdcdc.firebaseapp.com 20”,
    databaseURL: “https://auth-bdcdc.firebaseio.com 7”,
    projectId: “auth-bdcdc”,
    storageBucket: “auth-bdcdc.appspot.com 2”,
    messagingSenderId: “xxxxxxxxxx”
    };
    
    Reply
  9. YOU CALL THIS IN JADE: firebase.initializeApp(config); IN THE BEGIN OF THE FUNC

    script.
        function signInWithGoogle() {
            firebase.initializeApp(config);
            var googleAuthProvider = new firebase.auth.GoogleAuthProvider
            firebase.auth().signInWithPopup(googleAuthProvider)
            .then(function (data){
                console.log(data)
            })
            .catch(function(error){
                console.log(error)
            })
        }
    
    Reply

Leave a Comment