Docs from the source.

Sourcey turns OpenAPI, MCP, Doxygen, godoc, rustdoc and Markdown into docs you’re proud to put your name on. Built for people and agents, with the source, design and hosting under your control.

Cheesestore API operation with typed request fields and generated code examples
Take it home with you
Setup commands
npx sourcey init
npm install
npm run dev
# Stop the preview with Ctrl+C, then build:
npm run build

Project dependencies use npm. Requires Node.js 22.19 or later.

All installation options

Get started

Empty directory to shipped docs.

init scaffolds the project, dev gives you hot reload, build emits static HTML.

Terminal
$ npx sourcey init
Created sourcey.config.ts
Created introduction.md
Created quickstart.md
Created package.json
Created .gitignore
✓ Created sourcey project in ./
$ npm install
$ npm run dev
Sourcey dev server running at
http://localhost:4400/
Press Ctrl+C to stop
$ npm run build
Sourcey: building documentation site
✓ Output: ./dist
  1. 01

    Configure

    Configuration Reference

    Point it at your OpenAPI spec, MCP server, or markdown. One TypeScript file, type-checked with full autocomplete.

    npx sourcey init
    sourcey.config.ts
    import { defineConfig, markdown, openapi, mcp } from "sourcey";
    
    export default defineConfig({
      name: "Cheese Store",
      navigation: {
        tabs: [
          {
            tab: "Guides", slug: "",
            source: markdown({
              groups: [{ group: "Start", pages: ["introduction"] }],
            }),
          },
          { tab: "API", slug: "api", source: openapi("./cheese.yml") },
          { tab: "MCP", slug: "mcp", source: mcp("./cheesestore.mcp.json") },
        ],
      },
    });
  2. 02

    Write

    Writing Pages

    Markdown with rich components: steps, cards, accordions, code blocks. Guides alongside your API reference.

    npm run dev
  3. 03

    Ship

    Deploying

    Static HTML with no runtime. Deploy to GitHub Pages, Vercel, S3, or anywhere you serve files.

    npm run build
Make it yours

Technical docs can look this good.

Theme configuration

Four themes give you a starting point. Set your own fonts and colours, then use CSS for the details.

MailSchema's specification in Sourcey's Reader theme, with its dark masthead and chapter navigation

Reader · MailSchema’s specification, with chapter navigation and editorial typography.

Read the specification

Built with Sourcey

Reference from your specs and code.

Parameters, nested types, responses and request examples come from your API definition. Doxygen, godoc and rustdoc bring your library reference into the same site.

POST /cheeses5 languages

Search down to the endpoint.

Find a guide, an API operation or a parameter. Results take you straight to the page or endpoint. The search index ships with your site and works offline.

Give your agent the reference.

Give it the operation it needs, with parameters, authentication and examples intact. Schemas, guides and library reference have their own readable documents too. Publish the OpenAPI contract, ARD, API catalog and llms.txt alongside them.

Export and discovery configuration

api/operations/operation-cheeses-cheeseid-get.md
# GET /cheeses/{cheeseId}

Get cheese by ID

Returns detailed information about a specific cheese, including its category, tags, and current availability status.


Parameters:

- `cheeseId` (path, integer, int64, required) - Unique identifier for the cheese
  Type: integer, int64
  
  minimum: 1

Responses:

- 200: Cheese details

Content type: application/json

Type: object

Schema: [Cheese](https://sourcey.com/examples/docs-showcase/api/schemas/cheese-6e5a59d4fd.md)

- `id` (required)
  Type: integer, int64

Plain HTML does most of the work.

Pages render at build time. The browser gets HTML, CSS and a small script for search and interactive controls.

Run a fresh audit
Lighthouse Report
100
Performance
100
Accessibility
100
Best Practices
100
SEO
Cheese Store quickstartMobile Lighthouse 13.5 · 8 October 2026

Write the guide beside the reference.

Component reference
webhooks.md
:::steps
1. Register your endpoint
   Choose the events and your receiving URL.
2. Verify each delivery
   Check `X-Cheese-Signature` before processing.
3. Acknowledge the event
   Return `200` and process the work asynchronously.
:::

:::accordion{title="Signature verification failing?"}
Verify the raw request body, before parsing JSON.
:::
Preview
Features

What ships with Sourcey.

Reference inputs

Keep the definitions and comments you already maintain.

  • OpenAPI 2.0 through 3.2

    Endpoints, schemas and request examples in ten languages. OpenAPI 3.2 support includes QUERY operations, hierarchical tags and response summaries.

  • MCP server docs

    Tools, resources, and prompts rendered as browsable reference. JSON-RPC, TypeScript, and Python code samples.

  • C++ and Java via Doxygen

    Keep API comments with your code. Sourcey renders Doxygen’s XML as searchable reference; Moxygen is included.

  • Go and Rust

    Go package docs from the Go toolchain, without a Doxygen detour. Rust crate docs and doctests from rustdoc JSON, through the bundled sourcey-rustdoc helper.

  • Markdown and MkDocs

    Steps, cards, accordions and tabbed code in Markdown. Import navigation, snippets, admonitions and assets from mkdocs.yml.

Development and CI

Work in your editor, preview locally and use your existing pipeline.

  • TypeScript config

    Sources, navigation, branding and output in one sourcey.config.ts. defineConfig() supplies autocomplete and type checking.

  • Vite dev server

    Hot reload for components and CSS, with page refreshes when specs or Markdown change.

  • Instant search

    Fuzzy search across pages, operations and parameters. Cmd+K opens it. The index ships with your static files and works offline.

  • Install anywhere

    npx sourcey with no global install, or install once via Homebrew, Docker, or Nix.

  • Builds in CI

    Run sourcey build in GitHub Actions or any pipeline. Rebuild the docs with each source change.

Publishing and ownership

Static files, project branding and the formats your readers need.

  • Static HTML output

    HTML, CSS and scripts for search and controls. Serve them from GitHub Pages, Vercel, S3 or your own infrastructure.

  • Four theme presets

    Default with sidebar and page outline, Minimal for a single column, API-first for reference beside examples, Reader for long documents. Your fonts, colours and CSS.

  • Dark mode

    Follows the system preference until a reader chooses. Saves that choice and supports separate light and dark logos.

  • OG image cards

    Social preview images generated during the build from page titles, descriptions and project branding.

  • Readable docs and discovery

    Markdown for pages, operations and schemas, plus llms.txt and a full-text export. Optional OpenAPI downloads, ARD and API catalogs. The separate docs MCP server reads a built directory. Retrievers for LangChain and n8n read these files.

Image

Own your docs.

Open source under AGPL-3.0. Fork it or run it on your own infrastructure.