Gatsby source plugin for building websites using MMS as a data source
npm install gatsby-source-mmsA Gatsby plugin that runs a GraphQL query on MMS, and parses its response based on a GraphQL schema, to get your data
properly into Gatsby's world.
* Creator: Daniel Farrell
* Updates: Danny Sellergren
* Updates: Matt Clough
* Updates: Dan Sibitzky
* Updates: Lloyd Flanagan
Add the following with your settings to the gatsby-config.js file under plugins:
{
resolve: gatsby-source-mms,
options: {
account: awesome-co,
accessToken: 00000000-0000-0000-0000-000000000000
}
},
For development, you can just add gatsby-source-mms to plugins and it will point to localhost:3000/graphql.
To use a local version of this package for development purposes, clone this repository and then from the repo directory run:
yarn link
From the local project repository directory that you want to use with this package, run:
yarn link gatsby-source-mms
Then run yarn and yarn watch in this package's directory and you can yarn develop from the project you're running the package from.
To reverse this process, run yarn unlink in this repository's directory and yarn unlink gatsby-source-mms and yarn in the project repository's directory.
1. Download and cache the schema from the server (utils/getSchema).
2. Build client scheme from that schema.
3. Parse the client query to query AST and operation AST.
4. Gather fragment definitions.
5. Validate the query is valid for the schema.
6. Run query against server.
7. Use the type info of the schema to walk through the operations.
8. Recursively make nodes from the data, using fragments as needed.
Published to NPM.