Robust APIs with clojure.spec & GraphQL
summary
Generates clojure.spec definitions automatically from a GraphQL schema, then extends them to express constraints GraphQL cannot (e.g. positive/limited pagination, formatted emails), uses those specs for client-side validation, resolver input/output checking, generative testing and mocking, and to produce runnable spec files for large APIs (example: GitHub produced 5446 specs). The library serene integrates with clojure.spec, is usable on both client and server, and the presenters show it working end-to-end and publish the code on GitHub.
AI-written summary · about
chapters (5)
related talks
27mPower to the (Mobile) People: Clojure and GraphQL
46mSpectrum, a library for statically "typing" clojure.spec
58mGraphQL -- Flexible APIs for Adaptive Clients
50mWriting better APIs with MicroProfile GraphQL
38mNo REST for the Wicked. Building a GraphQL
23mBuild the API You Want to See in the World
46mBoost your API Development with GraphQL & Prisma
24mOptimizing for API Consumers with GraphQL
