Docyard

Docyard

Docyard combines a Nuxt-powered theme, Python and Rust API extraction, and a flake-parts module — author Markdown and Quarto files, configure once in flake.nix, and ship a reproducible static site.

Nuxt 4 · Quarto · Nix flakes

Capabilities

Zero boilerplate
Managed mode — your repo holds only Markdown/Quarto files and a few flake options.
Quarto authoring
.qmd sources with citations, callouts, numbered cross-references, and KaTeX math.
API extraction
Python (griffe), Rust (rustdoc), and TypeScript (compiler API) reference pages.
MDC content
Markdown with component islands for callouts, code tabs, and diagrams.
Full-text search
Built-in search powered by Nuxt Content.
LLM-friendly
Generates llms.txt and structured API JSON automatically.

Quick start

Add Docyard to your flake inputs

inputs.docyard = {
  url = "github:khwstolle/docyard";
  inputs.nixpkgs.follows = "nixpkgs";
};

Import the flake-parts module and configure

imports = [ inputs.docyard.flakeModules.default ];

perSystem = { ... }: {
  docyard = {
    enable = true;
    site = {
      managed = true;
      title = "My Project";
      content = "docs";
      apis = [{
        language = "python";
        name = "mylib";
        src = "src/mylib";
      }];
    };
  };
};

Build or serve the site

nix run .#docs-serve   # dev server with hot reload
nix run .#docs-build   # static build
nix run .#docs-preview # build + serve preview

Continue with the Getting Started guide.