This repository is the starting place for a mob-programing session with the goal to create a GraphQL server.
We'll start with quick comparison about what it really means to create a REST api and what types of problems GraphQL can address.
Then we'll dive into a clean project and build up a GraphQL server using Apollo Server in NodeJS. We'll work together to create a basic schema, and write our first resolvers. We'll continue by finding a way to organize our files, learn what context is and how to use it. If time allows we'll also talk about cacheing data with dataloader
. We'll also provide links with and some thoughts on how to implment Authorization.
This will be a slide-free, code heavy, mob programming session, so bring your laptops, and let's play with GraphQL together.
I first learned about Richardson Maturity Model in David Zuelke's 2012 "Designing HTTP Interfaces And RESTful Web Services" talk. If you are creating REST api's it's a must watch in my opinion.
- How To GraphQL
- Shopify's GraphQL Design Tutorial is a great read on how to make a good GraphQL Schema
- Authorization resources:
- GraphQL.org's Authorization docs
- [Apollo's Authorization][https://blog.apollographql.com/authorization-in-graphql-452b1c402a9] post
graphql-shield