A customizable documentation generator for GraphQL


Magidoc is an open source GraphQL documentation auto-generator. It helps saving developers time and energy by using the GraphQL schema to generate static websites that can be hosted on any web server.

  • pelletier197


    This project began the day my company needed to build a GraphQL reference for customers to use it. After searching around the web, I found around 4 or 5 projects that would be able to do what I wanted, but they were all lacking something

    They either:

    • were not customizable, or very difficult to customize

    • were not maintained

    • did not allow to write custom content (tables, code examples, etc)

    And so, I started working on this new project on my own free time. My goal was to make something that would be infinitely and easily customizable. The best approach for that was to use a real frontend framework instead of a simple templating framework. This is the reason Svelte was used as the main framework to build templates.

    Along with that, many of the modules were extracted as standalone libraries, making them re-usable for other Svelte projects, not just for this single project! Examples of plugins is a GraphQL Query Generator, a Svelte-PrismJS wrapper library and a Svelte-Markdown parser to convert markdown to svelte components.

    Finally, one of the coolest thing about Magidoc is that you don't even need to know Svelte to use it. It aims to provide various templates, allowing developers to generate different websites using a single configuration file (magidoc.mjs). No code required!