1.5.6 • Public • Published

    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


    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.


    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!


    npm i @gramps/cli

    DownloadsWeekly Downloads






    Unpacked Size

    25.3 kB

    Total Files


    Last publish


    • molyholy
    • jake.henderson
    • ryanomackey
    • jlengstorf