loopback4-connector-firestore-gcp
v1.0.10
Published
Firebase Firestore connector for the LoopBack framework running on GCP.
Downloads
7
Maintainers
Readme
loopback4-connector-firestore
Firebase Firestore connector for the LoopBack4 framework.
I needed an easy way to connect a Loopback application to Firebase's NoSQL database Firestore so that i decided to build this connector.
Installation
If you want to know how to get started with Loopback4 check this.
To add a new data source, use the data source generator:
lb4 datasource
Then the data source generator will prompt some questions like
- Enter the data-source name: Firestore (Choose your prefered name)
- Select the connector for Firestore: other
- Enter the connector's module name loopback4-connector-firestore
- Install loopback4-connector-firestore (Y/n) y
Then you should use a service account. Go to Project Settings > Service Accounts in the Google Cloud Platform Console. Generate a new private key and save the JSON file.
You should fill the application's datasource file which is located in /server/datasources.json
with those details, You can find them in the downloaded JSON file from the Google Cloud Platform.
"firestore": {
"name": "firestore",
"projectId": "",
"clientEmail": "",
"privateKey": "",
"databaseName": "Optional, Default: projectId",
"serviceAccount": "Optional"
}
Connection properties
| Property | Type | Description | --- | | --- | --- | --- | --- | | projectId | String | project_id in the JSON file | --- | | clientEmail | String | client_email in the JSON file | --- | | privateKey | String | private_key in the JSON file | --- | | databaseName | String | Firebase's project id | Optional, Default: projectId | --- | | serviceAccount | String | Local path to service Account | Optional, Default: undefined | --- |
And you can actually store those private details as an Environment variables, Check source-configuration
on server side
set GOOGLE_APPLICATION_CREDENTIALS environment variable
Build and test from source
Download google service json key file to test folder and rename it to config.json
npm test
Inspiration
I've got inspired by the Official MongoDB connector by Loopback
License
Copylefted (c) 2021 Bui Dinh Ngoc Licensed under the MIT license. Copylefted (c) 2017 Dyaa Eldin Moustafa Licensed under the MIT license.