# Redocusaurus: an OpenAPI reference that lives inside your Docusaurus site

> Redocusaurus is a Docusaurus preset that brings Redoc-rendered API documentation into the same site as your prose, with a theme wrapper for dark mode and a content plugin that generates pages from OpenAPI files or URLs. It suits teams whose docs and API reference should share one navigation, and it depends on how willing you are to accept a third-party rendering layer.

**rohit-gohri/redocusaurus** — OpenAPI for Docusaurus with Redoc

- Repository: https://github.com/rohit-gohri/redocusaurus
- Website: https://redocusaurus.vercel.app/
- Stars: 746 · Forks: 119
- Language: TypeScript
- License: MIT
- Published: 2026-10-21 · Updated: 2026-10-21 · Language: en
- Canonical page: https://hysenlabs.com/projects/rohit-gohri-redocusaurus

## The problem behind the package: two doc systems, one site

The motivation section is short and states the problem exactly: to have the documentation and API reference in the same site with the same headers and footers.

That is a problem almost every API project hits at some point. The prose documentation lives in Docusaurus, written in Markdown, with a sidebar, a navbar, a search index and a deployment pipeline. The API reference lives in Redoc, which reads an OpenAPI description and renders a very different thing, an interactive three-panel explorer that most people find genuinely better for exploring endpoints than a hand-written reference. Then the site has two of everything, two navigation systems, two search indexes, two visual styles, and an API reference that a visitor can tell was bolted on.

The upstream context is in the readme, which links a Docusaurus issue on GitHub and a gist for the details and history. The issue number is old enough that this has been a recurring request for a long time, and the project is the answer to it.

The audience is a documentation team or an API maintainer who has already chosen Docusaurus for the prose side and Redoc for the reference side, and who wants one site rather than two. The plugin is the OpenAPI for Docusaurus package, and the repository links a blog post about the project and a who-is-using section in the documentation for teams already running it.

## Three packages: a preset, a theme wrapper and a content plugin

The repository is a monorepo, and the Packages section of the readme describes the division of labour, which is worth understanding because each piece can be adopted alone.

The Redocusaurus package itself is a Docusaurus Preset that combines the other two to easily add API documentation to a docs site. A preset in Docusaurus is a bundle of plugin, theme and configuration, so installing the preset is the one-line path for most people.

The Docusaurus Theme Redoc package is a wrapper around RedocStandalone to make it match the Docusaurus Theme, with added support for Dark Mode. That is the interesting engineering in the project, because RedocStandalone is a complete self-contained React application with its own styling, and the work is in making it inherit the surrounding site's fonts, colours and spacing rather than looking like a foreign object embedded in a page.

The Docusaurus Plugin Redoc package is a content plugin that creates pages from your OpenAPI files or URLs and renders them using the Redoc component from the theme. So the split is: the theme owns the visual integration and the component, the plugin owns turning a spec into a route, and the preset wires both into a Docusaurus configuration.

A fourth entry in the tree is the website, described as the docs website and example project showing the preset in action with multiple different OpenAPI specs. That is worth noting for an evaluator, because it means the package is demonstrated against more than one specification format rather than one happy path.

## Installing it: the documentation site, not the readme

The readme is deliberately thin on setup. The Usage section consists of one line, check the documentation on the website, and the readme does not include an install command, a config snippet, or a preset name to put in your docusaurus.config.

The project points you at https://redocusaurus.vercel.app/docs for that, and at an examples section for what the result looks like. The site is also the live documentation for the package, which is a slightly unusual but common arrangement for a docs plugin: the thing that documents Docusaurus configuration has to be a Docusaurus site to show what the configuration looks like.

The monorepo's own development setup is documented in the repository rather than in the readme too, with DEVELOPMENT.md for setting up the project locally and CONTRIBUTING.md for the general contribution workflow.

For a package that changes how a whole documentation site renders, that is defensible. A configuration snippet in a readme goes stale, while a documentation site with its own docs pages is versioned with the code. The cost is that you have to go and read the site to learn the entry point, which is a real friction point for anyone evaluating it in a hurry.

## How the release process works: changesets across a yarn workspace

The root package.json is where the engineering conventions of the project are visible, and it is a yarn workspaces monorepo named redocusaurus-monorepo with a placeholder version of 0.0.0, which is the normal way to version a container package.

The scripts show the build order. build runs build:packages then build:website, and build:packages uses yarn workspaces foreach from redocusaurus with the topological, parallel and recursive flags to run build in each package. The website build first writes the current package version into a version.json inside the website workspace, which is how the docs site knows which release it is documenting.

The release script is the interesting one:

```json
    "release": "yarn build:packages && changeset publish --no-git-tag",
```

That is a changesets-based release, and the --no-git-tag flag means the publishing step does not create the git tag, which is consistent with a repository where tags and releases are managed separately from the npm publish. The version script runs changeset version, then yarn install without the immutable flag, then a script at scripts/combine-changelog.sh that merges the per-package changelogs into one. The .changeset/ directory at the top of the tree is where the pending version bumps are recorded.

The test script is worth flagging honestly, because it says:

```json
    "test": "echo \"Error: no test specified\" && exit 1",
```

So the monorepo root has no unit test suite wired into that script. What it does have is visual regression testing, since the readme carries a badge for Percy.io and the repository has a build and deploy workflow, plus a lint script running eslint over js, jsx, ts and tsx, and husky for git hooks through the prepare script.

## What a Redoc page actually costs you in the browser

There is a real trade-off here that the readme does not discuss, and it is worth stating plainly before anyone adopts it.

Redoc is not a lightweight HTML renderer. RedocStandalone bundles the whole Redoc React application, which parses the OpenAPI document at runtime in the browser and renders its own panels, its own try-it console, its own styling. The theme package in this repository wraps that component rather than replacing it, and the readme describes the theme as a wrapper around RedocStandalone, with the visual work being to make it match the Docusaurus Theme and to add Dark Mode support.

So the cost of shipping an API reference page is the size and runtime cost of the Redoc application, paid on every page that includes it, plus a second rendering system on a site that otherwise uses Docusaurus's own MDX pipeline. For a large documentation site with many API pages, that is a budget decision rather than a technical obstacle.

The flip side is the payoff. Redoc's try-it console is what makes an API reference usable, and that is a lot of behaviour to rebuild. Docusaurus on its own will render a code sample, not a request builder. Wrapping Redoc rather than writing a renderer is the right call for most teams.

The other limitation worth naming is scope. The plugin creates pages from OpenAPI files or URLs, so it covers the OpenAPI description format. It does not cover Postman collections, RAML, or an OpenAPI 2.0 document that Redoc itself refuses, and the readme does not document any such handling.

## State of the project: version 2.5.x and a 2024 copyright

The package on npm is redocusaurus, and the recent releases are v2.5.2 and v2.5.1, both published on 2026-06-28, and v2.5.0 from 2025-05-30.

Two consecutive patch releases on the same day is the pattern of a version bump plus a fix, and the gap from 2.5.0 to 2.5.1 in June 2026 is a sign that the maintainer is shipping. The repository is not archived, and the last push was on 2026-09-09.

The licence is MIT, with the copyright line reading MIT License, Copyright (c) 2024 Rohit Gohri, and the author in the package manifest is Rohit Gohri with a rohit.page email address. The manifest is typed with TypeScript, and the repository has a tsconfig.json and an .eslintrc at the root.

One structural note. The root is a yarn workspace with a .yarn/ directory and a .yarnrc.yml, and the scripts use yarn workspaces foreach with flags like -tpvR, which is a Yarn Berry command. The lockfile is yarn.lock. There is also a .nvmrc pinning the Node version, and a .vscode directory. For a package you install from npm, none of that touches you, but it does tell you the development setup is pinned to a specific Node and Yarn version, which is the kind of discipline that tends to produce fewer broken releases.

The website is at redocusaurus.vercel.app, which doubles as the documentation site, the examples gallery, and the who-is-using page.

## Conclusion

Redocusaurus fits a team with a Docusaurus site whose API reference currently lives somewhere else and whose readers complain about the split, and it does not fit a project that wants a single lightweight renderer with no React tree of its own, since the Redoc component is a React application in its own right. Before adopting it, check the Docusaurus major version your site uses against the version range the preset declares, and read the who-is-using page in the documentation, because the visual fit depends on your theme rather than on the preset alone.

## FAQ

### What does Redocusaurus do for a Docusaurus site?

It is Redoc for Docusaurus, brought in as a preset that adds API documentation pages rendered from your OpenAPI descriptions. The motivation given in the readme is to have the documentation and API reference in the same site with the same headers and footers.

### What packages does the Redocusaurus monorepo contain?

Three published packages plus the website: redocusaurus, a Docusaurus Preset combining the other two, docusaurus-theme-redoc, a wrapper around RedocStandalone that matches the Docusaurus Theme and adds Dark Mode, and docusaurus-plugin-redoc, a content plugin that creates pages from OpenAPI files or URLs and renders them with the theme's Redoc component.

### How do I install Redocusaurus?

The README does not include an install command, and points to the documentation on the project website at redocusaurus.vercel.app/docs, with an examples section showing the result. The repository also documents local development setup in DEVELOPMENT.md and the contribution workflow in CONTRIBUTING.md.

### Does Redocusaurus support dark mode?

Yes. The docusaurus-theme-redoc package is described as a wrapper around RedocStandalone to make it match the Docusaurus Theme with added support for Dark Mode, which is one of the main jobs of the theme package.

### How are Redocusaurus releases published?

With changesets. The root package.json release script runs yarn build:packages and then changeset publish --no-git-tag, the version script runs changeset version followed by an install and a script that combines the per-package changelogs, and the .changeset directory holds the pending version bumps.

## Sources

- [License: MIT](https://github.com/rohit-gohri/redocusaurus/blob/main/LICENSE)
- [Project website](https://redocusaurus.vercel.app/)
- [README](https://github.com/rohit-gohri/redocusaurus/blob/main/README.md)
- [Releases](https://github.com/rohit-gohri/redocusaurus/releases)
- [rohit-gohri/redocusaurus on GitHub](https://github.com/rohit-gohri/redocusaurus)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/rohit-gohri-redocusaurus
