All notes
GraphQl

Why it is needed

graphql.org.

vs REST

REST, an acronym for Representational State Transfer, is an architectural style rather than a formal protocol.

A number of weaknesses in typical REST systems:

vs Ad Hoc Endpoints

Summary

GraphQL represents a novel way of structuring the client-server contract.

Servers publish a type system specific to their application, and GraphQL provides a unified language to query data within the constraints of that type system. That language allows product developers (e.g. the advanced FE developers) to express data requirements in a form natural to them: a declarative and hierarchal one.

Intro

The reference implementation, graphql-js provides a library in JavaScript that is the basis for full GraphQL implementations and tools. For those using an express server, it is recommend to use express-graphql to provide a GraphQL server.