Alternative ways to add Firebase to your JavaScript project
Stay organized with collections
Save and categorize content based on your preferences.
For most Firebase web apps we strongly recommend using
the SDK via npm.
However, for users with special requirements, Firebase provides alternative
ways to add the SDK.
This page provides detailed setup instructions for these alternative methods:
CDN (content delivery network)
npm for Node.js apps
Using these methods, you can add any of the
available libraries
to your app.
From the CDN
You can configure partial import of the FirebaseJavaScript SDK and only load the
Firebase products that you need. Firebase stores each library of the
FirebaseJavaScript SDK on our global CDN (content delivery network).
To include only specific Firebase products
(for example, Authentication and Cloud Firestore), add the following
script to the bottom of your <body> tag, but before you use any
Firebase services:
<body>
<!--InsertthisscriptatthebottomoftheHTML,butbeforeyouuseanyFirebaseservices-->
<scripttype="module">
import{initializeApp}from'https://www.gstatic.com/firebasejs/12.1.0/firebase-app.js'// If you enabled Analytics in your project, add the Firebase SDK for Google Analyticsimport{getAnalytics}from'https://www.gstatic.com/firebasejs/12.1.0/firebase-analytics.js'// Add Firebase products that you want to useimport{getAuth}from'https://www.gstatic.com/firebasejs/12.1.0/firebase-auth.js'import{getFirestore}from'https://www.gstatic.com/firebasejs/12.1.0/firebase-firestore.js'</script>
</body>
Add your Firebase configuration object, and then initialize Firebase in
your app:
<body>
<scripttype="module">
// ...// TODO: Replace the following with your app's Firebase configurationconstfirebaseConfig={// ...};// Initialize Firebaseconstapp=initializeApp(firebaseConfig);</script>
</body>
Node.js apps
Install the FirebaseJavaScript SDK:
If you don't already have a package.json file, create one by
running the following command from the root of your JavaScript
project:
npm init
Install the firebase npm package and save it to your
package.json file by running:
npm install --save firebase@12.1.0
Use one of the following options to use the Firebase module in your app:
// Firebase App (the core Firebase SDK) is always required and// must be listed before other Firebase SDKsvarfirebase=require("firebase/app");// Add the Firebase products that you want to userequire("firebase/auth");require("firebase/firestore");
Include the entire FirebaseJavaScript SDK, rather
than individual SDKs
(not recommended for production apps)
// Firebase App (the core Firebase SDK) is always required and// must be listed before other Firebase SDKsimportfirebasefrom"firebase/app";// Add the Firebase services that you want to useimport"firebase/auth";import"firebase/firestore";
Include the entire FirebaseJavaScript SDK, rather
than individual SDKs
(not recommended for production apps)
importfirebasefrom"firebase";
Add your Firebase configuration object, and then initialize Firebase in
your app:
import{initializeApp}from'firebase/app';// TODO: Replace the following with your app's Firebase configurationconstfirebaseConfig={//...};// Initialize Firebaseconstapp=initializeApp(firebaseConfig);
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-15 UTC."],[],[],null,["\u003cbr /\u003e\n\nFor most Firebase web apps we strongly recommend using\n[the SDK via npm](/docs/web/setup).\nHowever, for users with special requirements, Firebase provides alternative\n[ways to add the SDK](/docs/web/learn-more#ways-to-add-web-sdks).\nThis page provides detailed setup instructions for these alternative methods:\n\n- CDN (content delivery network)\n- npm for Node.js apps\n\nUsing these methods, you can add any of the\n[available libraries](/docs/web/learn-more#available-libraries)\nto your app. \n\nFrom the CDN\n\nYou can configure partial import of the Firebase JavaScript SDK and only load the\nFirebase products that you need. Firebase stores each library of the\nFirebase JavaScript SDK on our global CDN (content delivery network).\n\n1. To include only [specific Firebase products](/docs/web/learn-more#libraries-cdn)\n (for example, Authentication and Cloud Firestore), add the following\n script to the bottom of your `\u003cbody\u003e` tag, but before you use any\n Firebase services:\n\n ```javascript\n \u003cbody\u003e\n \u003c!-- Insert this script at the bottom of the HTML, but before you use any Firebase services --\u003e\n \u003cscript type=\"module\"\u003e\n import { initializeApp } from 'https://www.gstatic.com/firebasejs/12.1.0/firebase-app.js'\n\n // If you enabled Analytics in your project, add the Firebase SDK for Google Analytics\n import { getAnalytics } from 'https://www.gstatic.com/firebasejs/12.1.0/firebase-analytics.js'\n\n // Add Firebase products that you want to use\n import { getAuth } from 'https://www.gstatic.com/firebasejs/12.1.0/firebase-auth.js'\n import { getFirestore } from 'https://www.gstatic.com/firebasejs/12.1.0/firebase-firestore.js'\n \u003c/script\u003e\n \u003c/body\u003e\n ```\n | You can optionally [delay loading of Firebase SDKs](/docs/web/learn-more#delay-sdks-cdn) until the entire page has loaded.\n2. Add your Firebase configuration object, and then initialize Firebase in\n your app:\n\n ```javascript\n \u003cbody\u003e\n \u003cscript type=\"module\"\u003e\n // ...\n\n // TODO: Replace the following with your app's /docs/web/learn-more#config-object\n const firebaseConfig = {\n // ...\n };\n\n // Initialize Firebase\n const app = initializeApp(firebaseConfig);\n \u003c/script\u003e\n \u003c/body\u003e\n ```\n\nNode.js apps**Caution:** The following instructions are for using the Firebase JavaScript SDK as a client for end-user access (for example, in a Node.js desktop or IoT application). To set up administrative access from privileged environments (such as servers), [set up the Firebase Admin SDK](/docs/admin/setup) instead.\n\n1. Install the Firebase JavaScript SDK:\n\n 1. If you don't already have a `package.json` file, create one by\n running the following command from the root of your JavaScript\n project:\n\n ```\n npm init\n ```\n 2. Install the `firebase` npm package and save it to your\n `package.json` file by running:\n\n ```\n npm install --save firebase@12.1.0\n ```\n2. Use one of the following options to use the Firebase module in your app:\n\n - **You can `require` modules from any JavaScript file**\n\n To include only [specific Firebase products](/docs/web/learn-more#libraries-nodejs)\n (like Authentication and Cloud Firestore): \n\n // Firebase App (the core Firebase SDK) is always required and\n // must be listed before other Firebase SDKs\n var firebase = require(\"firebase/app\");\n\n // Add the Firebase products that you want to use\n require(\"firebase/auth\");\n require(\"firebase/firestore\");\n\n Include the entire Firebase JavaScript SDK, rather\n than individual SDKs\n *(not recommended for production apps)*\n | Loading the entire SDK is not efficient for production web apps. \n Use this option for development purposes only. \n\n ```javascript\n var firebase = require(\"firebase\");\n ```\n\n \u003cbr /\u003e\n\n - **You can use ESM syntax to `import` modules**\n\n To include only [specific Firebase products](/docs/web/learn-more#libraries-nodejs)\n (like Authentication and Cloud Firestore): \n\n // Firebase App (the core Firebase SDK) is always required and\n // must be listed before other Firebase SDKs\n import firebase from \"firebase/app\";\n\n // Add the Firebase services that you want to use\n import \"firebase/auth\";\n import \"firebase/firestore\";\n\n Include the entire Firebase JavaScript SDK, rather\n than individual SDKs\n *(not recommended for production apps)*\n | Loading the entire SDK is not efficient for production web apps. \n Use this option for development purposes only. \n\n ```python\n import firebase from \"firebase\";\n ```\n3. Add your Firebase configuration object, and then initialize Firebase in\n your app:\n\n ```javascript\n import { initializeApp } from 'firebase/app';\n\n // TODO: Replace the following with your app's /docs/web/learn-more#config-object\n const firebaseConfig = {\n //...\n };\n\n // Initialize Firebase\n const app = initializeApp(firebaseConfig);\n ```"]]