~/talk

Performant APIs with GraphQL and PHP

Talkat Dutch PHP Conference 2019 · 2019-06-06..06-08· [php, api-design]
slides:none on file

Shows how a PHP server serves a single /graphql endpoint using webonyx/graphql-php to parse, validate and execute queries; builds a demo API (tutorial on GitHub/Glitch) that returns exactly the requested JSON shape and supports typed schemas. Addresses the n+1 problem with deferred resolvers and batching, recommends client libraries like Apollo or Lokka, explains persisted queries, tooling (Playground, Voyager, codegen) and limits (complexity/depth, no PHP subscriptions).

AI-written summary · about

  1. 0:00Performant APIs with GraphQL and PHP
  2. 1:02Challenges with Traditional APIs
  3. 3:49Topics
  4. 5:04GraphQL Implementations
  5. 5:40GraphQL Advantages
  6. 6:20GraphQL in a web stack
  7. 8:50Arguments
  8. 9:07Variables
  9. 10:52Queries
  10. 12:16Lokka a simple graphal client library
  11. 12:48Apollo
  12. 14:05webonyx/graphql-php
  13. 15:56Root fields
  14. 18:25Custom object type
  15. 19:11And now we have a GraphQL server!
  16. 22:53Voyager - Any GraphQL API as an interactive graph
  17. 23:57PHPStorm JS GraphQL Plugin - IDE Integration
  18. 24:24Types can be used in client-side code
  19. 27:36Solution: deferred resolvers
  20. 28:50Limiting Query Complexity and Depth
  21. 33:26Challenges when using GraphQL
  22. 36:31Resources
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.