Shopify GraphQL Design Tutorial

This tutorial was originally created by Shopify for internal purposes. We've created a public version of it since we think it's useful to anyone creating a GraphQL API.

It's based on lessons learned from creating and evolving production schemas at Shopify over almost 3 years. The tutorial has evolved and will continue to change in the future so nothing is set in stone.

We believe these design guidelines work in most cases. They may not all work for you. Even within the company we still question them and have exceptions since most rules can't apply 100% of the time. So don't just blindly copy and implement all of them. Pick and choose which ones make sense for you and your use cases.

Read the full tutorial here.

Contributing

Contributions are welcome; however, this tutorial reflects rules specific to Shopify and any substantial changes to those will primarily happen internally and not through external contributions.

Code of Conduct

Anyone who wishes to contribute through code or issues, take a look at the CODE_OF_CONDUCT.md.

License

MIT, see LICENSE for details.