Thanks for coming to my talk, Building Your First GraphQL Client in JS. Here you will find all the resources discussed during the talk.
About
RESTful APIs have been around for a while now, but they are flawed. Things like non-standard CRUD operations, response validation, error handling, in-memory state management, etc. just get really hard. In this talk, you will learn how GraphQL – a standard that unifies server and client communication – comes to save the day, and why the surrounding tooling is a game-changer.
We will answer the following questions. What is the philosophy behind GraphQL? How do you architect a scalable schema? How can GraphQL boost productivity? How can you avoid common pitfalls?
We will then get a GraphQL server up and running while focusing on exploring real-world patterns for architecting our schema. We will discuss and implement practical steps to improve query performance, error handling, and caching.
Source Code
https://github.com/JoeKarlsson/mongodb-graphql-demo
Slides
Video
Talk Outline:
- Comparison of REST to GraphQL
- Intro to GraphQL
- Why use GraphQL?
- Declarative
- Decoupled from storage
- Validated and structured
- Facilitates Collaboration
- Super Fast
- Graphiql
- Why NOT use GraphQL
- More abstraction has greater performance costs
- GraphQL is still very new
- Intro to Apollo
- Declarative Data Fetching
- Zero-Config Caching
- Vibrant Ecosystem
- Why use GraphQL?
- Live Demo
- Setup GraphQL
- How to do queries
- How to do mutations
- Final Thoughts/Recap
Related Links
- MongoDB University
- MongoDB Developer Hub
- MongoDB Community Forums
- Introducing GraphQL Support in MongoDB Atlas with Stitch
- MongoDB GraphQL API Documentation (Beta)
- GraphQL Types & Resolvers
- Authenticate GraphQL Requests
- GraphQL Official Docs
- GraphQL Hub
- Apollo Official Docs