GraphQL
HYPE ou EVOLUTION ?

ALEX DUVAL
17 - 09 -2019
GDG in the Alps
GraphQL

GRAph Query Language
GRAPHQL
2012
OPEN SOURCE 2015
Github - Coursera - Yelp - NY Times - Twitter - Shopify ...

TYPED
CLIENT FIRST
ON DEMAND
SCHEMA FIRST
SOAP
REST
GRAPHQL
XML
JSON
JSON
REST

under / over fetching
client first - on demand
many routes
one route ONLY - POST
versionning / maintenance
on demand
documantation manuel
auto
perf.
1 route = 1 ressources = 1 verb
one route / resolvers
validation manuel
typed

SCHEMA FIRST
type Book {
title: String
author: Author
}
type Author {
name: String
books: [Book]
}
TYPE
FIELD
SCALAR
ID
String
Int
Boolean
Type
JSON
Date
...
!== BDD DataModel

ACTION
QUERY
MUTATION
SUBSCRIPTION
get
post
websocket
like VERB
RESOLVER
fieldName:(root, args, context, info) => { result }

hello: () => {
return 'Hello world!';
},
RESOLVER
type Tag {
title: String
tickets: [Ticket]
}
type Ticket {
name: String
tags: [Tag]
}
type Query{
allTags: [Tag]
post(id: ID): Tag
}
type Mutation {
createTag(title: String, ticket: String): Tag
}

DEMO

12 languages
Testable
ECO system
Tooling
Services

CHANGING
BACKEND developpement
TEAM management
onboarding TEAM mate
auto CRUD ( meta )
...

Ressources

Q & A


GraphQL
By Alex Duval
GraphQL
- 181