Ruru
Ruru1 is a distribution of GraphiQL, the GraphQL IDE, that:
- integrates the popular "GraphiQL Explorer" plugin
- supports automatic hot-reloading GraphQL schemas via the
X-GraphQL-Event-Stream
header - focusses on ease of deployment
- contains enhancements for use with a Grafast-powered servers2 (namely: view your plan diagrams and similar debugging)
- is somewhat customizable
- will be more customizable in future
Running
See a demo of Ruru in action in the Grafast playground.
Or try: ruru serving https://countries.trevorblades.com/graphql.
You can run Ruru in many ways:
- HTML file — entirely browser-based
- CLI — proxy bypasses CORS, works offline, great for debugging
arbitrary GraphQL APIs
- instant usage (no permanent installation):
npx ruru -SPe http://...
- install globally:
npm install --global ruru
- install locally:
npm install --save-dev ruru
- instant usage (no permanent installation):
- server — best for your own Node.js based GraphQL API
- integrate via the
ruruHTML({...})
HTML generator function - (optional) companion
serveStatic(...)
middleware enables offline usage
- integrate via the
Footnotes
-
Jem and I are big fans of the late Terry Pratchett's Discworld universe. The city at the centre of many a Discworld tale is the twin-city city-state of Ankh-Morpork. A "morepork" is a type of New Zealand owl, known in Māori as "ruru."3 Owls have excellent sight, and Ruru helps you to get an insight into not just the inputs and outputs of your API, but also what it does internally. GNU Terry Pratchett ↩
-
Grafast is not required to run Ruru ↩
-
RURU is also an abbreviation for checks to use when gathering information: "is it Reliable, Up-to-date, Relevant, and Useful?" We hope that you'll find Ruru to be all those things! ↩