Datastore Emulator UI
Node Version >= 7.6.0
npm i -g @streamrail/dsui
# Start the datastore emulator
gcloud beta emulators datastore start
# Open a new terminal
$(gcloud beta emulators datastore env-init)
dsui
# Open http://localhost:3000 and start browsing
For more information about the datastore emulator, please see this document.
Option | Short | Value Type | Description | Default | Mandatory |
---|---|---|---|---|---|
port |
p |
Number | HTTP server port | 3000 |
✔ |
project-id |
j |
String | Datastore Project ID | DATASTORE_PROJECT_ID (Environment Variable) |
✔ |
api-endpoint |
e |
String | Datastore API Endpoint | DATASTORE_EMULATOR_HOST (Environment Variable) |
|
filter |
f |
Array | UI Filters | [] |
|
key-filename |
k |
String | Private key file path | ||
version |
v |
- | DSUI module version | ||
help |
h |
- | Show help menu |
You can customize the UI filters by specifiying an array of Field Names.
For example when running:
dsui --filter Id --filter Name
The UI will include 2 inputs for filtering by Id
and Name
fields.
Populating Name
with somename
will result a query with query.filter('Name', '=', 'somename')
Note: At the moment this feature supports fields of type String
only.
For more information, please see this document.
git clone https://github.com/streamrail/dsui.git
cd dsui
npm run watch
Running the tests will seed the datastore emulator with predefined data. For running the tests you'll need to run 3 terminals:
# start datastore emulator
gcloud beta emulators datastore start --consistency=1 --no-store-on-disk
# starting the dsui server
$(gcloud beta emulators datastore env-init)
npm run watch
# seeding & running tests
$(gcloud beta emulators datastore env-init)
npm run test