All Projects → steadyequipment → Node Firestore Backup

steadyequipment / Node Firestore Backup

Google Firebase Firestore backup tool

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Node Firestore Backup

Fuego
Fuego is a command line client for the firestore database (https://firebase.google.com/docs/firestore).
Stars: ✭ 110 (-42.71%)
Mutual labels:  cli, firebase, firestore
Node Firestore Import Export
Firestore data import and export
Stars: ✭ 271 (+41.15%)
Mutual labels:  firebase, backup, firestore
Firestore Backup Restore
NPM package for backup and restore Firebase Firestore
Stars: ✭ 307 (+59.9%)
Mutual labels:  firebase, backup, firestore
Combinefirebase
Combine wrapper on Google's iOS Firebase library.
Stars: ✭ 126 (-34.37%)
Mutual labels:  firebase, firestore
Butler
Export/Import Jenkins jobs & plugins 📤
Stars: ✭ 113 (-41.15%)
Mutual labels:  cli, backup
Firebasecrud
Rich UI and animation flutter app backed by firebase
Stars: ✭ 121 (-36.98%)
Mutual labels:  firebase, firestore
Flutter medical
Functioning Doctor/Healthcare Catalog App created using Dart with Flutter. Stores and loads data from Firebase Firestore DB.
Stars: ✭ 99 (-48.44%)
Mutual labels:  firebase, firestore
Fluttergram
A fully functional Instagram clone written in Flutter using Firebase / Firestore
Stars: ✭ 1,944 (+912.5%)
Mutual labels:  firebase, firestore
Chatair Android
🔥 A highly advance featured chat app in android using Firestore
Stars: ✭ 132 (-31.25%)
Mutual labels:  firebase, firestore
Ghbackup
Embarrassingly simple GitHub backup tool
Stars: ✭ 139 (-27.6%)
Mutual labels:  cli, backup
Grafcli
Grafana CLI for quick and easy dashboards management.
Stars: ✭ 152 (-20.83%)
Mutual labels:  cli, backup
Firebase Php
Unofficial Firebase Admin SDK for PHP
Stars: ✭ 1,657 (+763.02%)
Mutual labels:  firebase, firestore
Firestore Simple
More simple, powerfull and TypeScript friendly Firestore wrapper.
Stars: ✭ 145 (-24.48%)
Mutual labels:  firebase, firestore
Fireo
Google Cloud Firestore modern and simplest convenient ORM package in Python. FireO is specifically designed for the Google's Firestore
Stars: ✭ 163 (-15.1%)
Mutual labels:  firebase, firestore
Dynein
DynamoDB CLI written in Rust.
Stars: ✭ 126 (-34.37%)
Mutual labels:  cli, backup
Pring.ts
Cloud Firestore model framework for TypeScript - Google
Stars: ✭ 103 (-46.35%)
Mutual labels:  firebase, firestore
Nextjs Vercel Firebase
Next.js app using API routes to connect with Firestore.
Stars: ✭ 133 (-30.73%)
Mutual labels:  firebase, firestore
Makeitso
This is the source code for Make It So, the sample app accompanying my blog post "Replicating the iOS Reminders App Using SwiftUI and Firebase"
Stars: ✭ 181 (-5.73%)
Mutual labels:  firebase, firestore
Firebase Course
Firebase & AngularFire In Depth
Stars: ✭ 96 (-50%)
Mutual labels:  firebase, firestore
Fireway
A schema migration tool for firestore
Stars: ✭ 100 (-47.92%)
Mutual labels:  firebase, firestore

firestore-backup

A Google Firebase Firestore backup tool.

codebeat badge Codacy Badge David badge

Note: Firebase now has an official backup and restore tool

Read more about how to use it here: https://firebase.google.com/docs/firestore/manage-data/export-import

Installation

Install using npm.

npm install -g firestore-backup

or yarn

yarn global add firestore-backup

Alternatively download the source.

git clone https://github.com/steadyequipment/node-firestore-backup.git

Retrieving Google Cloud Account Credentials

  1. Visit the Firebase Console
  2. Select your project
  3. Navigate to Project Settings (at the time of writing the gear icon button at the top left of the page).
  4. Navigate to Service Accounts
  5. Click Generate New Private Key

This downloaded json file contains the proper credentials needed for firestore-backup to authenticate.

Usage

Backup:

  • -a, --accountCredentials <path> - Google Cloud account credentials JSON file.
  • -B, --backupPath <path>- Path to store the backup.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase

Backup with pretty printing:

  • -P, --prettyPrint - JSON backups done with pretty-printing.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --prettyPrint

Backup from a starting path:

  • -S, --databaseStartPath <path> - The database collection or document path to begin backup.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --databaseStartPath /myCollection/document_3

Limit number of requests:

  • -L, --requestCountLimit <number> - The maximum number of requests to be made in parallel.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --requestCountLimit 2

Exclude top level collections from backup:

  • -E, --excludeCollections <id> - Top level collection id(s) to exclude from backing up.

Note: because of how the command line parsing library works multiple collection ids must be specified as separate parameters.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --excludeCollections myFirstAnnoyingCollection --excludeCollections mySecondAnnoyingCollection

Exclude paths by regex:

  • --excludePattern <regex> - Patterns to match against paths to exclude from the backup. All subpaths of matched paths will also be excluded.

These patterns can support excluding several different sections of trees, e.g.:

  • Exclude top level collection: ^/collectionToIgnore
  • Exclude sub collections of all documents in a collection: ^/organizations/[^/]*/subcollectionToIgnore
  • Exclude sub collections at a given level: ^/[^/]/[^/]/subcollectionToIgnore
  • Exclude a particular document: ^/organizations/organizationToIgnore

Note: when combining excludePattern with databaseStartPath, the patterns are tested against the full path of the document off the root of database (with a leading slash).

Note: because of how the command line parsing library works multiple exclude patterns must be specified as separate parameters.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --excludePattern '^/collectionToIgnore' --excludePattern '^/[^/]*/[^/]*/subcollectionToIgnore'

Fetch documents in batches:

  • --batchSize <number - The maximum number of documents to fetch in a single request.

Example:

firestore-backup --accountCredentials path/to/credentials/file.json --backupPath /backups/myDatabase --batchSize 25

Relax:

That's it! ✨🌈

Contributions

This project has been made much better by it's contributors, feel free to report bugs and make feature requests in the Issue Tracker, fork and create pull requests!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].