Skip to content

[Enhancement]: Replace redocusaurus for API reference rendering #1294

Open

Description

@danbarr

Page or section

API reference pages rendered by redocusaurus from static/api-specs/:

  • ToolHive API
  • Registry API
  • Enterprise Manager API
  • Connector Gateway API
  • AI Gateway API

What could be better?

The API reference renders as a separate embedded Redoc app inside the docs. It has its own layout and navigation, and it doesn't match the site's look or plug into the site's sidebars and search the way other pages do.

redocusaurus also breaks code highlighting site-wide: its client module leaves Prism in a state where no additionalLanguages grammar registers (#1293).

Proposed improvement

Replace redocusaurus. Two candidates:

  • docusaurus-plugin-openapi-docs (Palo Alto Networks): generates an MDX page per endpoint, with a built-in request client.
  • Scalar (@scalar/docusaurus): one embedded reference page per spec with a modern UI.
    • It has a polished request client, theme presets, custom CSS, preset servers, and prefilled authentication.
    • Very little config and no generated files.
    • It stays a separate app with its own sidebar and search, much like Redoc today. Its search and llms.txt coverage, and whether the request client goes through a hosted proxy by default, are unverified.

Things to settle:

  • Fit with versioned enterprise docs.
  • Integration with the release-sync scripts that refresh static/api-specs/.
  • Redirects for the current API reference URLs.

Additional context

Supersedes the earlier attempt on the docusaurus-openapi-docs branch (plugin v4, kept redocusaurus alongside).

Fully or partially written by an AI agent.

Activity

  1. self-assigned this
    on Oct 29, 2026
  2. danbarr commented on Oct 29, 2026

    @danbarr
    CollaboratorAuthor

    Pushed the Scalar evaluation to spike/scalar-api-reference, replacing Redocusaurus for all five APIs. It uses @scalar/docusaurus 0.8.54 with the renderer pinned to 1.76.2.

    Enterprise Manager preview · Full spike notes

    The main tradeoff is navigation. Scalar keeps the site navbar but replaces the product sidebar with its own API navigation. Opening a reference takes you out of the docs journey. Existing overview URLs and connection/authentication guidance remain in place, with links to the separate explorer pages, but that transition feels disconnected.

    Other findings:

    • UI and maintenance: polished request editor, schemas, code samples, and per-reference search, with no generated endpoint files. The normal build reads the existing release-sync spec destinations.
    • Search and LLM exports: endpoint content is rendered in the browser, so the current Algolia crawler cannot index it. The llms.txt plugin exported only the site shell for explorer routes; those exports are excluded in the spike. OpenAPI downloads remain available.
    • Requests: the spike explicitly disables the hosted proxy, telemetry, and authentication persistence. A browser test with a mocked response confirmed a direct request to localhost:8080. Real deployments still need authentication and CORS configuration; this does not establish the plugin's default proxy behavior.
    • Integration work: standalone routes do not inherit docs versioning, page titles default to "Stacklok Docs," and each of the five plugin instances injects its CDN script site-wide. Production adoption would need version-specific routes/specs, metadata, and better renderer loading. Historical Redoc fragment links also need a migration plan.

    Local production build, typecheck, formatting, lint, and browser smoke checks passed. Additional Prism grammars register after Redocusaurus is removed. Release-sync CI and live authenticated API calls have not been tested.

    The Palo Alto plugin looks like the better fit for this site: preserving the site's navigation is more valuable here than Scalar's lower generation overhead. Scalar could be embedded in a normal docs page through a custom integration, but the official plugin does not provide that experience. Search/export coverage still needs verification for the Palo Alto spike before treating that comparison as settled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationenhancementNew feature or requestneeds-triageIssue needs initial triage by a maintainer

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions