GraphQL 101

GraphQL 101

An introduction to GraphQL

Presented at WebDevTalks meetup in May 3rd

6c137ee3013821b517c4b9beed0145df?s=128

Fernando Perales

May 03, 2017
Tweet

Transcript

  1. Who is that GraphQL all my friends are talking about?

    #WebDevTalks @FerPeralesM GraphQL 101
  2. <me> #WebDevTalks @FerPeralesM

  3. #WebDevTalks @FerPeralesM Software Engineer Former MagmaLabs / FreeAgent Software FLOSS

    advocate Heavy Metal and Beer lover Host the RubyGDL community Founder @ elbuencodigo.com In Gregory Sallust I trust
  4. </me> #WebDevTalks @FerPeralesM

  5. #WebDevTalks @FerPeralesM What is GraphQL?

  6. #WebDevTalks @FerPeralesM  2012

  7. #WebDevTalks @FerPeralesM REST

  8. #WebDevTalks @FerPeralesM Spotify

  9. #WebDevTalks @FerPeralesM Goal: get the name of all the tracks

    from a playlist called “Starred” created by an specific user
  10. #WebDevTalks @FerPeralesM

  11. #WebDevTalks @FerPeralesM

  12. #WebDevTalks @FerPeralesM

  13. #WebDevTalks @FerPeralesM

  14. #WebDevTalks @FerPeralesM

  15. #WebDevTalks @FerPeralesM

  16. #WebDevTalks @FerPeralesM

  17. #WebDevTalks @FerPeralesM

  18. #WebDevTalks @FerPeralesM

  19. #WebDevTalks @FerPeralesM

  20. #WebDevTalks @FerPeralesM

  21. #WebDevTalks @FerPeralesM

  22. #WebDevTalks @FerPeralesM

  23. #WebDevTalks @FerPeralesM

  24. #WebDevTalks @FerPeralesM

  25. #WebDevTalks @FerPeralesM Success!

  26. #WebDevTalks @FerPeralesM We only needed

  27. #WebDevTalks @FerPeralesM 3 HTTP calls

  28. #WebDevTalks @FerPeralesM Do an intensive operation in our backend (searching

    for the playlist with the “Starred” name)
  29. #WebDevTalks @FerPeralesM And getting three big payloads with unnecessary data*

    *for our needs
  30. #WebDevTalks @FerPeralesM

  31. #WebDevTalks @FerPeralesM GraphQL is, as the name might suggest, a

    query language
  32. #WebDevTalks @FerPeralesM Advantages

  33. #WebDevTalks @FerPeralesM Get exactly what you want

  34. #WebDevTalks @FerPeralesM

  35. #WebDevTalks @FerPeralesM Nesting

  36. #WebDevTalks @FerPeralesM

  37. #WebDevTalks @FerPeralesM

  38. #WebDevTalks @FerPeralesM Strongly typed

  39. #WebDevTalks @FerPeralesM Introspective

  40. #WebDevTalks @FerPeralesM

  41. #WebDevTalks @FerPeralesM No versioning

  42. Demo #WebDevTalks @FerPeralesM

  43. FerPerales/graphql_demo #WebDevTalks @FerPeralesM 

  44. ferperales/graphql-101 #WebDevTalks @FerPeralesM

  45. Fuentes #WebDevTalks @FerPeralesM https://medium.freecodecamp.com/so-whats-this-graphql-thing-i-keep-hearing-about-baf4d36c20cf http://blog.codeship.com/an-introduction-to-graphql-via-the-github-api http://facebook.github.io/graphql/ http://thenewstack.io/graphql-data-query-language-resource-guide http://medium.freecodecamp.com/give-it-a-rest-use-graphql-for-your-apis-40a2761e6336 http://dev.to/reactiveconf/why-i-believe-graphql-will-come-to-replace-rest

  46. ¡Gracias! #WebDevTalks @FerPeralesM