Skip to content

CLI for creating and developing with GrAMPS data sources.

License

Notifications You must be signed in to change notification settings

cknabe/gramps-cli

 
 

Repository files navigation

GrAMPS · An easier way to manage the data sources powering your GraphQL server All Contributors

GrAMPS CLI — Tools for Data Source Development

license npm version Build Status Maintainability Test Coverage Greenkeeper badge All Contributors

Quickstart

To get started with the GrAMPS CLI:

# Install the CLI
yarn add --dev @gramps/cli@beta
# npm install --save-dev @gramps/cli@beta

NOTE: We prefer Yarn, but if you use npm, use the alternative commands shown in comments below each example.

Start an empty development gateway

$(yarn bin)/gramps dev
# $(npm bin)/gramps dev

This will start a gateway server on port 8080 (or a random port if 8080 is in use). You can open the GraphQL Playground at http://localhost:8080/playground to verify the gateway is working.

Develop a data source locally

If you're working on a custom data source, you can test it by running the following:

# Using live data
$(yarn bin)/gramps dev --data-source ../my-data-source
# $(npm bin)/gramps dev --data-source ../my-data-source

# Turn on mock data
$(yarn bin)/gramps dev --data-source ../my-data-source --mock
# $(npm bin)/gramps dev --data-source ../my-data-source --mock

NOTE: You can develop using multiple local data sources by passing multiple paths to the --data-sources option (an alias of --data-source):

$(yarn bin)/gramps dev --data-sources ./one ./two
# $(npm bin)/gramps dev --data-sources ./one ./two

This is helpful if you're working on something like schema stitching.

Start a custom GraphQL gateway

When working with the CLI, any GrAMPS-powered gateway can be used for development — just provide the path to its start script in the --gateway option:

$(yarn bin)/gramps dev --gateway ../my-gateway
# $(npm bin)/gramps dev --gateway ../my-gateway

NOTE: This is useful for running a production gateway locally.

Use a local data source with a custom gateway

$(yarn bin)/gramps dev -g ./gateway -d ./data-source
# $(npm bin)/gramps dev -g ./gateway -d ./data-source

NOTE: For brevity, the shorthand of --gateway and --data-source-g and -d respectively — are used here.

If the data source is already installed on the gateway, GrAMPS will override it with the local version. This is extremely useful for debugging, maintenance, and experimentation.

Contributors


Jason Lengstorf

💻 📖

Eric Wyne

💻

Tim Schoenheider

📖

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!

About

CLI for creating and developing with GrAMPS data sources.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%