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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Aashima Ahuja
September 18, 2024
0
5
Graphql workshop
GraphQL workshop React Alicante
Aashima Ahuja
September 18, 2024
Tweet
Share
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Designing for Timeless Needs
cassininazir
0
130
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
110
Optimizing for Happiness
mojombo
379
71k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
770
Un-Boring Meetings
codingconduct
0
200
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
49
Building the Perfect Custom Keyboard
takai
2
680
Code Reviewing Like a Champion
maltzj
527
40k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
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