Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Graphql workshop
Search
Aashima Ahuja
September 18, 2024
0
5
Graphql workshop
GraphQL workshop React Alicante
Aashima Ahuja
September 18, 2024
Tweet
Share
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
180
Abbi's Birthday
coloredviolet
0
4.3k
Designing for Timeless Needs
cassininazir
0
110
Test your architecture with Archunit
thirion
1
2.1k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
2
3.9k
The Language of Interfaces
destraynor
162
26k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
290
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
120
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.8k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Music & Morning Musume
bryan
46
7k
Transcript
For React Developers @aashimaahuja22
None
Agenda 1. Introduction 2. Graphql fundamentals 3. Graphql Server 4.
GraphQl Client (Apollo Client) 5. Graphql with typescript
Introduction
GraphQL introduction 1. Restful Routing 2. Shortcomings of Restful Routings
3. What is GraphQL ? 4. Why GraphQL ?
RESTful Routing They are set of rules that are used
to carry out the CRUD operations, by using a set of HTTP verbs to make server requests.
Enter some content Post Enter some content Delete Edit http://
http://
HTTP methods URL Method Operation /posts POST Create a new
post /posts GET Fetch all posts /posts/23 GET Fetch post 23 /posts/20 PUT update post 20 /posts/12 DELETE delete post 12
Restful conventions URL Method Operation /<name> POST Create a record
/<name> GET Fetch all records /<name>/:id GET Fetch record with given id /<name>/:id PUT update record with given id /<name>/:id DELETE delete record with given id
Nested Urls URL Method Operation /users/2/posts POST Create a new
post /users/2/posts GET Fetch all posts users/2/posts/23 GET Fetch post 23 users/2/posts/20 PUT update post 20 users/2/posts/12 DELETE delete post 12
Shortcomings of RESTful routing John Doe software engineer at Google
Sarah Drasner software engineer at Netlify David Miller software engineer at X Cool Dude Fashion Designer @Tommy username company
Tables userId ID name String company_id ID position_id ID id
ID name String description String User Company id ID name String description String Position
User Friend Friend Friend Company Position Company Position Company Position
/user/23 /user/23/friends ???
Friend Friend Friend Company Position Company Position Company Position /user/23/friends
/users/1/company /users/1/position /users/2/company /users/2/position
Friend Friend Friend Company Position Company Position Company Position /user/23/friends_with_companies_and_positions
{ id: 12, name: ‘Apple’, stockPrice: ‘’, type: ‘public’ }
RESTful Routing shortcomings 1. Difficult to define urls in case
of heavily nested relations 2. Too many http calls 3. Over Fetching data
User User User User Company Position Company Position Company Position
query { user(id: “23”) { friends { company name }
} } User User User User Company Position Position Company Position
Writing first graphql query
Graphql Academy Project
Graphql academy - Display list of courses - Show details
of each course - Add new course - Delete a course - Update details of a course
Client Server GraphQL
Client Server GraphQL Database
Client Server GraphQL Database data access
Client Server GraphQL Database data access Auth
Client Server GraphQL Database data access Auth Web framework
Client Server GraphQL Database data access Auth Next JS
Client Server GraphQL SQLite data access Auth Next JS
Client Server GraphQL SQLite knex Auth Next JS
Client Server Apollo Server SQLite knex Auth Next JS
Client Server Apollo Server SQLite knex Next JS
Thankyou Slides Github repo link