nuxt-community / firebase-module

🔥 Easily integrate Firebase into your Nuxt project. 🔥
https://firebase.nuxtjs.org
MIT License
640 stars 99 forks source link
firebase nuxt nuxt-module nuxtjs nuxtjs-module

nuxt-firebase logo

Easily integrate Firebase into your Nuxt project.

IMPORTANT!

⚠️ Nuxt 3 not supported ⚠️:

This module was written for Nuxt 2 and does currently not support Nuxt 3. There are currently no plans to support Nuxt 3 in the near future in this module. However, you can take a look at VueFire Nuxt module for Nuxt 3 support

ℹ️ Modular Mode (Firebase v9+) ℹ️:

This module does not support the new modular syntax from Firebase v9+.

If you plan to use the new modular mode of Version 9, we advise you to implement Firebase manually as described in the following medium article.

It is currently unclear when, and if, this module will support the new modular mode. See discussion.

Links

Quick Setup

Make sure you are using Nuxt 2 and have Firebase v8 installed in your project.

yarn add firebase # OR npm i firebase

Install the module via NPM or Yarn:

yarn add @nuxtjs/firebase # OR npm i @nuxtjs/firebase

Quick Config

Add the following to your nuxt.config.js.

See all configuration options here.

modules: [
    [
      '@nuxtjs/firebase',
      {
        config: {
          apiKey: '<apiKey>',
          authDomain: '<authDomain>',
          projectId: '<projectId>',
          storageBucket: '<storageBucket>',
          messagingSenderId: '<messagingSenderId>',
          appId: '<appId>',
          measurementId: '<measurementId>'
        },
        services: {
          auth: true // Just as example. Can be any other service.
        }
      }
    ]
  ],

Quick Usage

Now you can use all Firebase services with this.$fire.auth, this.$fire.firestore, this.$fire.messaging etc. (see list here).

Example:

try {
  await this.$fire.auth.createUserWithEmailAndPassword('foo@foo.foo', 'test')
} catch (e) {
  handleError(e)
}

Guidelines for issues & feature requests

A good issue shouldn't leave others needing to chase you up for more information. Please try to be as detailed as possible in your report. What is your environment? What steps will reproduce the issue? What versions are you using? What would you expect to be the outcome? All these details will help people to fix any potential bugs.

If you have difficulties that are most likely not bugs or if you just have a simple questions, please ask them in the Nuxt Discord server instead.

If your issue does not suffice these guidelines, it might be closed immediately.

License

MIT - Nuxt-Community - Pascal Luther