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
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
96
First, design no harm
axbom
PRO
2
1.1k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
88
Navigating Team Friction
lara
192
16k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
So, you think you're a good person
axbom
PRO
2
1.9k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
The Language of Interfaces
destraynor
162
26k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
100
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Code Reviewing Like a Champion
maltzj
527
40k
Thoughts on Productivity
jonyablonski
74
5k
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