Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rakannimer/generate-firestore-data
https://github.com/rakannimer/generate-firestore-data
Last synced: 15 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/rakannimer/generate-firestore-data
- Owner: rakannimer
- Created: 2018-08-19T10:38:17.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2018-08-19T10:54:44.000Z (about 6 years ago)
- Last Synced: 2024-10-16T09:30:58.365Z (28 days ago)
- Language: TypeScript
- Size: 30.3 KB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Generate Firestore Data
This module is meant to run on node NOT on the browser or react-native.
Use this in your node server or on cli tools.
## Installation
### API
```sh
yarn add generate-firestore-data
# If you don't already have firebase-admin as a dependency then add it too
yarn add firebase-admin
```### CLI
```sh
# In your project :
yarn add -D generate-firestore-data
yarn generate-firestore-data# Or globally :
npm i -g generate-firestore-data
generate-firestore-data
```## Programmatic Usage
1. First you need a Private Key from firebase for privileged environments, find out how to get it here: https://firebase.google.com/docs/admin/setup (or replace YOUR_PROJECT_NAME_HERE with your project name here : https://console.firebase.google.com/project/YOUR_PROJECT_NAME_HERE/settings/serviceaccounts/adminsdk)
2. Place that private key .json file somewhere in your project.
3. Take note of your databaseURL
4. Create a schema for the data schema. Check [generate-json](https://github.com/rakannimer/generate-json) or [the examples](./examples-schemas/) for the schema format.```javascript
// Import it in your projectimport { generateFirestoreData } from "generate-firestore-data";
// Or
const { generateFirestoreData } = require("generate-firestore-data");// Import firebase-admin
import firebase from "firebase-admin";
// Or
const firebase = require("firebase-admin");// Use it
const databaseURL = "";
const credential = require("./firebase-key.json");
const { schema, count, keyReducers } = require("./schema");
await generateFirestoreData(
{
schema,
count,
keyReducers
},
{
firebase,
credential,
databaseURL
}
);
```## CLI Usage
Requires 2 files to exist schema.js and credentials.js
`credentials.js`
```javascript
module.exports = {
databaseURL: "",
credential: {
// JSON data from firebase-key.json
}
};
``````sh
generate-firestore-data path/to/schema.js path/to/credentials.js
```