One home for all your package docs.

Bring your Python, R, Julia, and Rust packages together. Build API references and guides with shared navigation, cross-references, and search.

- [Get started](<guide/quick-start>)
- [Explore the guide](<guide/>)

## Four languages, one home

Keep related packages together, with API references extracted from Python, R, Julia, and Rust.

[Read more](<guide/extraction>)

## Write alongside your code

Combine Markdown guides with API documentation. Link across packages without stitching sites together.

[Read more](<guide/authoring>)

## Examples that run

Execute QMD cells and verify API examples with native runtimes, then publish their results.

[Read more](<guide/execution>)

## Build once, publish anywhere

Save a portable snapshot. Generate a static site or bring your own frontend, without the source checkout.

[Read more](<guide/snapshots>)

# Diplodocus

<a id="start-with-a-working-site"></a>

## Start with a working site

The [quick start](<guide/quick-start>) walks through a small project with Python, R, Julia, and Rust packages. Build its documentation, follow links between equivalent functions, and edit a guide to see the preview update. 

To use Diplodocus for your own packages, [install the CLI](<guide/installation>) and describe your repositories, packages, and documentation directories in [workspace configuration](<guide/configuration>). 

<a id="write-check-and-publish"></a>

## Write, check, and publish

Write [authored pages](<guide/authoring>) alongside your packages and link them to the [extracted API references](<guide/extraction>). Enable [execution](<guide/execution>) when you want examples to run as part of the build. 

A [portable snapshot](<guide/snapshots>) stores the collected documentation and results, so you can generate the site later without the source checkout. The [command reference](<reference/cli>) covers checking, building, previewing, and generating your documentation.
