SlideShare a Scribd company logo
Demand Driven Applications
with
Vinci Rufus
@areai51
GraphQL
3 Eras of Web based Applications
Monolithic
Server Side
Applications
De-Coupled
Headless
Applications
REST
Demand Driven
Applications
Demand Driven
C O P Y R I G H T S A P I E N T R A Z O R F I S H | C O N F I D E N T I A L 3
What’s the problem with REST
C O P Y R I G H T S A P I E N T R A Z O R F I S H | C O N F I D E N T I A L 4
Over Fetching & Under Fetching
The Power of Positive Thinking
Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Curabitur porttitor, purus quis
ultricies rutrum, erat nisl facilisis erat, in
maximus massa libero nec ipsum. Cras eget
leo sed est scelerisque sodales vel eget justo.
Vestibulum ante ipsum primis in faucibus orci
luctus et ultrices posuere cubilia Curae;
Aenean feugiat ante id bibendum imperdiet.
Nunc gravida mollis est, nec tincidunt diam
sodales ultricies. Etiam consequat lobortis
tellus, eu pretium dui lacinia ac. Phasellus
faucibus eros in luctus tempor. Vestibulum vel
ultrices orci. Nullam in augue libero. Nam
dapibus velit nec pellentesque porttitor.
Author - John Doe
5 Comments - View All
C O P Y R I G H T S A P I E N T R A Z O R F I S H | C O N F I D E N T I A L 5
Agree on JSON Contracts
Frontend Developer Backend Developer
API Documentation
C O P Y R I G H T S A P I E N T R A Z O R F I S H | C O N F I D E N T I A L 7
API Rigidity and Bloat
C O P Y R I G H T S A P I E N T R A Z O R F I S H | C O N F I D E N T I A L 8
API versioning
API - V1 API – V2 API – V3
Demand Driven Architecture
David Nolen
Kovas Boguta
WTH is Demand Driven Architecture?
• Driven from the client side app. Clients demand their data
needs.
• Server knows how to parse this demand structure
recursively, fetching all data that is needed.
• Query up. Render down,
FALCOR GraphQL
By
Netflix
2011
By
Facebook
2012
GraphQL is a query language for your API, and a
server-side runtime for executing queries by using
a type system you define for your data.
"The biggest mistake we made as a company was
betting too much on HTML5 instead of native... We
burnt two years.”
Tech Crunch- Disrupt (2012)
Evolution
2012
Internal
Development at
Facebook
2015
Open sourced
2016
Deemed
Production
Ready
Popular brands using Graphql
GraphQL Specifications
facebook.github.io/graphql
Server Implementations
No Language Server Libraries
1 JavaScript GraphQL.js, express-graphql, Apollo Server
2 Ruby Graphql-ruby
3 Python Graphene
4 Scala Sangria
5 Java Graphql-java
6 Clojure Graphql-clj
7 Go Lang Graphql-gp , graphql-relay-go
8 PHP Graphql-php , graphql-relay-php
9 C# / .Net Graphql-dotnet, graphql-net
10 Elixir Absinthe, graphql-elixir
GraphQL is NOT
! a Graph database
! a client side state management library
! Limited to React, Relay or Web
! Limited to JavaScript & Node
Not related to Facebook’s Social Graph
GraphQL Clients
Relay
lokka
React | Angular | iOS | Android | VanillaJS
REST
GraphQL
src: http://slides.com/gerardsans/ngeurope-ng2-loves-graphql#/3/5
REST
GraphQL
GraphQL Topology
GraphQL
PIM OMS Inventory RDBMS
Microservices
Gql Query
Gql Query
Authentication & Authorization
HTTP
Authentication
GraphQL
Business Logic
Authorization
REST
Data Layer
src: https://www.youtube.com/watch?v=6GyubnT38EQ
GraphQL Query
• Single Endpoint.
• No more crazy parsing logic for JSON data
• No Need for Versioning
3 Types of Operations
•Query
Query data by passing an empty object of fields you want data for.
•Mutations
Cary out write operations on the dataset.
•Subscriptions
Real-time (read-only) updates of data.
GraphiQL
demo:
bit.ly/git-stars
code:
bit.ly/git-stars-code
Upcoming Features
@defer
Live Queries
• Vinci Rufus
• @areai51

More Related Content

Similar to Demand driven Applications with GraphQL (20)

PPTX
Taking Control of your Data with GraphQL
Vinci Rufus
 
PPTX
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
apidays
 
PDF
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
apidays
 
PDF
All you need to know about GraphQL.pdf
YAN IT Solutions Pvt. Ltd
 
PDF
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
Rob Crowley
 
PDF
Are you ready to adopt GraphQL?
Siva Prasad Rao Janapati
 
PDF
GraphQL
Cédric GILLET
 
PDF
API Management for GraphQL
WSO2
 
PDF
Graphql
Niv Ben David
 
PDF
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...
apidays
 
PDF
London React August - GraphQL at The Financial Times - Viktor Charypar
React London Community
 
PDF
APIdays Paris 2018 - Secure & Manage APIs with GraphQL, Ozair Sheikh, Directo...
apidays
 
PDF
Real-time GraphQL API with minimum coding and maximum benefit
Mikhail Asavkin
 
PPTX
Bff and GraphQL
Adrian Caetano
 
DOCX
How has netflix embraced graph ql for rapid application development
jenniferCarnel1
 
PDF
Introduction to GraphQL for beginners
Martin Pham
 
PDF
apidays LIVE Paris - GraphQL meshes by Jens Neuse
apidays
 
PPTX
Relay: Seamless Syncing for React (VanJS)
Brooklyn Zelenka
 
PPTX
GraphQL.pptx
Preston Flossy
 
PPTX
GraphQL.pptx
Preston Flossy
 
Taking Control of your Data with GraphQL
Vinci Rufus
 
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
apidays
 
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
apidays
 
All you need to know about GraphQL.pdf
YAN IT Solutions Pvt. Ltd
 
GraphQL - A query language to empower your API consumers (NDC Sydney 2017)
Rob Crowley
 
Are you ready to adopt GraphQL?
Siva Prasad Rao Janapati
 
API Management for GraphQL
WSO2
 
Graphql
Niv Ben David
 
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...
apidays
 
London React August - GraphQL at The Financial Times - Viktor Charypar
React London Community
 
APIdays Paris 2018 - Secure & Manage APIs with GraphQL, Ozair Sheikh, Directo...
apidays
 
Real-time GraphQL API with minimum coding and maximum benefit
Mikhail Asavkin
 
Bff and GraphQL
Adrian Caetano
 
How has netflix embraced graph ql for rapid application development
jenniferCarnel1
 
Introduction to GraphQL for beginners
Martin Pham
 
apidays LIVE Paris - GraphQL meshes by Jens Neuse
apidays
 
Relay: Seamless Syncing for React (VanJS)
Brooklyn Zelenka
 
GraphQL.pptx
Preston Flossy
 
GraphQL.pptx
Preston Flossy
 

More from Vinci Rufus (13)

PPTX
Microfrontends Monoreops & Trunkbased based
Vinci Rufus
 
PPTX
Spas are dead Long Live Microfrontends
Vinci Rufus
 
PPTX
Getting Productive & Performant with Angular
Vinci Rufus
 
PPTX
Dos & Donts when making Technology choices
Vinci Rufus
 
PPTX
Progressive Web App
Vinci Rufus
 
PPTX
It's just Angular
Vinci Rufus
 
PPTX
Angular PWA
Vinci Rufus
 
PPTX
Making Angular2 lean and Fast
Vinci Rufus
 
PPTX
Re-thinking Performance tuning with HTTP2
Vinci Rufus
 
PPTX
Teams Pizza Team vs Jigsaw Puzzle Team
Vinci Rufus
 
PPTX
Gesture based Interactions in JavaScript
Vinci Rufus
 
PPTX
Components Approach to building Web Apps
Vinci Rufus
 
PPTX
Angular JS and Magento
Vinci Rufus
 
Microfrontends Monoreops & Trunkbased based
Vinci Rufus
 
Spas are dead Long Live Microfrontends
Vinci Rufus
 
Getting Productive & Performant with Angular
Vinci Rufus
 
Dos & Donts when making Technology choices
Vinci Rufus
 
Progressive Web App
Vinci Rufus
 
It's just Angular
Vinci Rufus
 
Angular PWA
Vinci Rufus
 
Making Angular2 lean and Fast
Vinci Rufus
 
Re-thinking Performance tuning with HTTP2
Vinci Rufus
 
Teams Pizza Team vs Jigsaw Puzzle Team
Vinci Rufus
 
Gesture based Interactions in JavaScript
Vinci Rufus
 
Components Approach to building Web Apps
Vinci Rufus
 
Angular JS and Magento
Vinci Rufus
 
Ad

Recently uploaded (20)

PPTX
美国电子毕业证帕克大学电子版成绩单UMCP学费发票办理学历认证
Taqyea
 
PDF
Digital burnout toolkit for youth workers and teachers
asociatiastart123
 
PDF
web application development company in bangalore.pdf
https://dkpractice.co.in/seo.html tech
 
PPTX
西班牙巴利阿里群岛大学电子版毕业证{UIBLetterUIB文凭证书}文凭复刻
Taqyea
 
PDF
Learning Exemplar_Technology and Livelihood Education 7 Q1_W2.pdf
mjhiludo16
 
PDF
The Convergence of Threat Behaviors Across Intrusions
Joe Slowik
 
PPTX
Metaphysics_Presentation_With_Visuals.pptx
erikjohnsales1
 
PPTX
Networking_Essentials_version_3.0_-_Module_5.pptx
ryan622010
 
PPTX
Ransomware attack and its effects on cyber crimes
ShilpaShreeD
 
PDF
Materi tentang From Digital Economy to Fintech.pdf
Abdul Hakim
 
PDF
BRKSP-2551 - Introduction to Segment Routing.pdf
fcesargonca
 
PDF
Strategic Plan New and Completed Templeted
alvi932317
 
PPTX
原版一样(毕业证书)法国蒙彼利埃大学毕业证文凭复刻
Taqyea
 
PPTX
My Mother At 66! (2).pptx00000000000000000000000000000
vedapattisiddharth
 
PDF
FutureCon Seattle 2025 Presentation Slides - You Had One Job
Suzanne Aldrich
 
PDF
The Hidden Benefits of Outsourcing IT Hardware Procurement for Small Businesses
Carley Cramer
 
PDF
google promotion services in Delhi, India
Digital Web Future
 
PDF
Top 10 Testing Procedures to Ensure Your Magento to Shopify Migration Success...
CartCoders
 
PDF
BRKAPP-1102 - Proactive Network and Application Monitoring.pdf
fcesargonca
 
PDF
Cybersecurity Nightmare_ 16 Billion Passwords Leaked in Data Breach by Orage ...
Orage Technologies
 
美国电子毕业证帕克大学电子版成绩单UMCP学费发票办理学历认证
Taqyea
 
Digital burnout toolkit for youth workers and teachers
asociatiastart123
 
web application development company in bangalore.pdf
https://dkpractice.co.in/seo.html tech
 
西班牙巴利阿里群岛大学电子版毕业证{UIBLetterUIB文凭证书}文凭复刻
Taqyea
 
Learning Exemplar_Technology and Livelihood Education 7 Q1_W2.pdf
mjhiludo16
 
The Convergence of Threat Behaviors Across Intrusions
Joe Slowik
 
Metaphysics_Presentation_With_Visuals.pptx
erikjohnsales1
 
Networking_Essentials_version_3.0_-_Module_5.pptx
ryan622010
 
Ransomware attack and its effects on cyber crimes
ShilpaShreeD
 
Materi tentang From Digital Economy to Fintech.pdf
Abdul Hakim
 
BRKSP-2551 - Introduction to Segment Routing.pdf
fcesargonca
 
Strategic Plan New and Completed Templeted
alvi932317
 
原版一样(毕业证书)法国蒙彼利埃大学毕业证文凭复刻
Taqyea
 
My Mother At 66! (2).pptx00000000000000000000000000000
vedapattisiddharth
 
FutureCon Seattle 2025 Presentation Slides - You Had One Job
Suzanne Aldrich
 
The Hidden Benefits of Outsourcing IT Hardware Procurement for Small Businesses
Carley Cramer
 
google promotion services in Delhi, India
Digital Web Future
 
Top 10 Testing Procedures to Ensure Your Magento to Shopify Migration Success...
CartCoders
 
BRKAPP-1102 - Proactive Network and Application Monitoring.pdf
fcesargonca
 
Cybersecurity Nightmare_ 16 Billion Passwords Leaked in Data Breach by Orage ...
Orage Technologies
 
Ad

Demand driven Applications with GraphQL