A thin wrapper for sequelize and graphql-relay-js
npm install sequelize-relayThis is a library to allow the easy creation of Relay-compliant servers using
sequelize,
graphql-js and
graphql-relay-js.



For a comprehensive walk-through and more details see the docs
This library is designed to work with the
graphql-relay-js implementation
of a GraphQL server using Sequelize.
Consider reviewing the documentation and tests found at graphql-relay-js
along with the tests and documentation found here.
Install Relay Library for GraphQL.js
``sh`
npm install sequelize-relay
When building a schema for GraphQL.js,
the provided library functions can be used to simplify the creation of Relay
patterns hand-in-hand with sequalize and graphql-relay:
* getArrayData - Converts an Array of Array of Array
* resolveArrayByClass - First, it internally resolves an an of SequelizeClass. Then it converts the array into a promised Array of Array
* resolveArrayData - Converts a promised of Array of
* NEW! - Sequelize Queries are available as an argument:
``
articles: {
description: 'Articles',
type: articleConnection,
args: connectionArgs,
resolve: (root, args) =>
connectionFromPromisedArray(
resolveModelsByClass(Article, { order: args.order}), args
)
},
After cloning this repo, ensure dependencies are installed by running:
`sh`
npm install
This library is written in ES6 and uses Babel for ES5
transpilation and Flow for type safety. Widely
consumable JavaScript can be produced by running:
`sh`
npm run build
Once npm run build has run, you may import or require() directly from
node.
After developing, the full test suite can be evaluated by running:
`sh`
npm test
While actively developing, we recommend running
`sh`
npm run watch
in a terminal. This will watch the file system run lint, tests, and type
checking automatically whenever you save a js file.
To lint the JS files and run type interface checks run npm run lint.
Seeder is used to generate db.development.sqlite, which is then manually
copied to db.fixture.sqlite for unit tests. if db changes unit tests have
to changes, so it makes more sense to just have a fixed db.
```
npm run seed
But db is subject to change, so keeping the seeding feature in for now.