Awesome
<div align=center> <a href="https://zudoku.dev" alt="Zudoku"> <img src="./assets/github-hero.png" width=630 alt="Zudoku Docs & Developer Portal"> </a> </div>Zudoku
API documentation should always be free.
<a href="#-installation"><strong>Installation</strong></a> · <a href="https://zudoku.dev/docs/app-quickstart"><strong>Docs</strong></a> · <a href="#-examples"><strong>Examples</strong></a> · <a href="#-contributing--community"><strong>Contributing</strong></a> · <a href="#-motivation"><strong>Motivation</strong></a>
Introduction
Zudoku (pronounced "zoo-doh-koo") is an open-source, highly customizable API documentation framework for building quality developer experiences around OpenAPI and, soon, GraphQL documents.
Because great API documentation frameworks should be:
🌍 Free & Open Source<br /> ✅ OpenAPI powered<br /> 🔩 Extensible with Plugins<br /> ⚡ Easy to setup & blazing fast to work with<br /> 🔧 Easy to maintain
🤩 Try it, right now!
You can test Zudoku with your own OpenAPI document at zudoku.dev and see how good your documentation can look!
✨ Features
- 🚀 Generate documentation from a single or multiple OpenAPI schema
- 📄 Create MDX pages for anything you want to document
- 🔐 Integrate your users with authentication via OpenID or OAuth2
- 🧪 Let users test their API calls using the Integrated Playground (includes authentication!)
- 🌑 Dark mode (of course!)
Zudoku is quick to implement, easy to configure and is highly composable with sensible defaults.
⚙️ Installation
You can use the CLI to generate a new project or use it standalone via CDN as a React component.
⚡️ Quick start
Fire up your new API docs using the command line generator:
npm create zudoku-app@latest
📦 Standalone via CDN
Add the package and styles to your <head>
and pass the URL for your API schema to the data-api-url
property, as shown here:
<!doctype html>
<html>
<head>
<title>Zudoku Demo</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" type="image/svg+xml" href="https://cdn.zudoku.dev/logos/favicon.svg" />
<script type="module" src="https://cdn.zudoku.dev/latest/main.js" crossorigin></script>
<link rel="stylesheet" href="https://cdn.zudoku.dev/latest/style.css" crossorigin />
</head>
<body>
<div data-api-url="https://api.example.com/openapi.json"></div>
</body>
</html>
🧱 Getting started templates
To get started with some of the features Zudoku offers you can use one of these example templates:
Template | What it does |
---|---|
many-apis | Using more than one OpenAPI document with Zudoku |
with-auth0 | Authenticate users in docs with the Auth0 plugin |
with-config | Barebones config, ready for you to setup how you like |
with-vite-config | Use Zudoku with your Vite config (Advanced) |
🎓 Examples
Zudoku use cases
Zudoku is a flexible and highly customizable framework that can be used to create many things, including:
- Standalone documentation websites
- OpenAPI powered API references
- A developer portal with documentation, fully functional API reference for testing and authentication support for your user accounts.
- Internal documentation
🔧 Contributing & Community
For details on how to contribute to Zudoku, see the contributing guide.
Changelog
Details of the latest updates to Zudoku can be found in the changelog.
🎯 Motivation
At Zuplo, we couldn’t find an open-source solution that met our high standards for both trustworthiness and programmability, so we decided to create our own. And since no one chooses Zuplo solely because of our documentation, we felt great about open-sourcing this tool and making it easy for anyone to self-host.
We hope that if you use it, you’ll think fondly of Zuplo, and one day, when you’re looking for a gateway or API management product, you’ll consider us as a vendor to evaluate.
Zudoku will always be open-source. It will always be free.
License
Zudoku is licensed under MIT. See the full license.
<a href="https://twitter.com/zuplo"> <img alt="X (formerly Twitter) Follow" src="https://img.shields.io/twitter/follow/zuplo"> </a>