Deploy a Nuxt 3 Application with Firebase Hosting
In this tutorial, you will learn how to deploy a Nuxt 3 SSR application with nuxt-vuefire to firebase hosting.
Prerequisites
- Familiarity with the command line
 - Install Node.js version 18.0 or higher
 - A Nuxt 3 application
 - A Firebase account with firebase hosting enabled
 - Blaze plan enabled on your firebase account
 
Setup
- Install the Firebase CLI globally by running the following command in your terminal:
 
npm install -g firebase-tools
- Login to your Firebase account by running the following command:
 
firebase login
- Add the following packages to your project if not already added:
 
npm install vuefire nuxt-vuefire firebase firebase-admin firebase-functions @firebase/app-types
- Add the required params for your nuxt.config.js file:
 
export default defineNuxtConfig({
  modules: [
    // ... other modules
    'nuxt-vuefire',
  ],
  vuefire: {
    config: {
      apiKey: '...',
      authDomain: '...',
      projectId: '...',
      appId: '...',
      // there could be other properties depending on the project
    },
  },
  
  nitro: {
    preset: firebase,
  }
})
- Add your firebase config.
 
- create a file called firebase.json in the root of your project and add the following code:
 
{
  "hosting": [
    {
      "site": "your_project_name",
      "public": ".output/public",
      "cleanUrls": true,
      "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
      "rewrites": [{ "source": "**", "function": "server" }]
    }
  ],
  "functions": [
    {
      "source": ".output/server",
      "codebase": "default",
      "ignore": [".git", "firebase-debug.log", "firebase-debug.*.log"]
    }
  ]
}
- dont forget to replace the "site" with your correct project name.
 
Too much time indoors, in front of the computer? Find an activity to do Outside at GeoQuestr.com
- Add which ever functionality you want from the nuxt-vuefire package. -Best is to go to the nuxt-vuefire documentation and follow the steps there. -https://vuefire.vuejs.org/nuxt/getting-started.html
 - Build your Nuxt 3 application by running the following command:
 
npm run build
- Deploy your application by running the following command:
 
firebase-tools deploy
Thats it!
It couldn't get any easier than that, now you have a Nuxt 3 application deployed to firebase hosting. By using the nitro preset "firebase". It will detect that you have a SSR application and automatically set it up as a serverless function.
Did you like this tutorial?
You can support me, so that i can continue to make more tutorials like this one.
