Skip to main content

Output Formats

oxdoc supports 4 output formats, each suited for different use cases.

JSON

Structured output with full metadata. Best for tooling and programmatic consumption.

oxdoc generate ./src --format json

Output contains the complete ProjectDocumentation structure:

{
"metadata": {
"generatedAt": "2026-03-31T00:00:00.000Z",
"version": "0.1.0",
"sourceRoot": "./src"
},
"files": [
{
"filePath": "src/utils.ts",
"symbols": [
{
"name": "formatDate",
"kind": "function",
"signature": "function formatDate(date: Date): string",
"exported": true,
"doc": {
"description": "Formats a Date object to ISO string",
"tags": [
{ "tag": "param", "name": "date", "description": "The date to format" },
{ "tag": "returns", "description": "Formatted date string" }
]
}
}
]
}
]
}

Markdown

Human-readable documentation, ideal for GitHub wikis or static site generators.

oxdoc generate ./src --format markdown

Generates Markdown files with:

  • File-based sections with ## headers
  • Parameter tables (Name | Type | Description)
  • Return type sections
  • Example code blocks

HTML

Standalone single-page documentation with built-in UI features.

oxdoc generate ./src --format html

Features:

  • Sidebar navigation with collapsible file tree
  • Search functionality for filtering symbols
  • Dark theme support
  • Symbol badges showing kind (function, class, interface, etc.)
  • Hash-based navigation for direct linking to symbols
  • No external dependencies — a single self-contained HTML file

llms.txt

AI/LLM-optimized format following the llmstxt.org specification.

oxdoc generate ./src --format llms-txt

Designed for:

  • GitHub Copilot context
  • Claude and ChatGPT project knowledge
  • AI-powered code assistants
  • Minimal token usage with maximum information density

The output is simplified compared to Markdown, focusing on signatures, parameters, and return types in a compact format optimized for LLM context windows.