JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 487
  • Score
    100M100P100Q94053F
  • License MIT

A helper NPM package for Firebase Cloud Functions

Package Exports

  • firebase-functions-helper

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (firebase-functions-helper) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

firebase-functions-helper

A helper NPM package for Firebase Cloud Functions

Installation

Install using npm.

npm install firebase-functions-helper

Get Google Cloud Account Credentials from Firebase

You can Generate New Private Key from Project Settings from Firebase Console.

After that you need to copy the databaseURL for initiating the App.

Usage

Initialize Firebase App

This is the first step that you need to do before doing any other actions.

const firebaseFunctionsHelper = require('firebase-functions-helper');
const serviceAccount = require('./serviceAccountKey.json');

// Initialize Firebase App
firebaseFunctionsHelper.initializeApp(serviceAccount, databaseURL);

Get Firestore Collection with Sub Collection

// Start exporting your collection
var result = firebaseFunctionsHelper.backup('collection-name', 'sub-collection-optional');
result.then(data => console.log(data))

Import data to firestore

This code will help you to import data from a JSON file to firestore

// Start exporting your data
firebaseFunctionsHelper.restore('your-file-path.json');

The JSON is formated as below. The collection name is test. first-key and second-key are document ids.

{
  "test" : {
    "first-key" : {
      "email"   : "dungnq@itbox4vn.com",
      "website" : "dalenguyen.me",
      "custom"  : {
        "firstName" : "Dale",
        "lastName"  : "Nguyen"
      }
    },
    "second-key" : {
      "email"   : "test@dalenguyen.me",
      "website" : "google.com",
      "custom"  : {
        "firstName" : "Harry",
        "lastName"  : "Potter"
      }
    }
  }
}

Contributions

This project is based on firebase-functions-snippets, feel free to report bugs and make feature requests in the Issue Tracker, fork and create pull requests!