Zorto

The AI-native static site generator (SSG) with executable code blocks.

Features

Zorto #

GitHub Release PyPI crates.io CI License: MIT

The AI-native static site generator (SSG) with executable code blocks, inspired by Zola and Quarto.

Install #

curl -LsSf https://dkdc.sh/zorto/install.sh | sh

Verify:

zorto --version
zorto 0.21.0
More install options

The curl | sh installer above wraps uv tool install zorto. On Linux and macOS it pulls a pre-built wheel from PyPI that bundles the Rust engine (no compile step). Windows is not covered by the installer — use cargo from source or run under WSL.

uv (PyPI wheel, no compile):

uv tool install zorto

uvx (run once without installing):

uvx zorto

cargo (build from source, requires Rust 1.85+):

cargo install zorto

Usage #

zorto --help
The AI-native static site generator (SSG) with executable code blocks

Usage: zorto [OPTIONS] [COMMAND]

Commands:
  build    Build the site
  preview  Start preview server with live reload
  clean    Remove output directory and/or cache
  init     Initialize a new site
  check    Check site for errors without building
  skill    Install zorto skill files for AI agents
  help     Print this message or the help of the given subcommand(s)

Options:
  -r, --root <ROOT>        Site root directory [default: .]
  -N, --no-exec            Disable execution of code blocks ({python}, {bash}, {sh})
      --sandbox <SANDBOX>  Sandbox boundary for file operations (include shortcode, etc.). Paths cannot escape this directory. Defaults to --root
  -h, --help               Print help
  -V, --version            Print version

Slide decks #

Zorto ships a reveal.js-powered presentation mode: one markdown file per slide, with frontmatter for layout, background, and transitions. Arrow keys, speaker view, fullscreen, and overview mode are built in, so a deck is just a directory of .md files that a human or agent can draft, reorder, or hand off without touching HTML.

Executable code blocks #

Use {bash} or {python} in code blocks to execute them.

echo "hello"
hello
echo "Built on $(uname -s) $(uname -m) at $(date -u '+%Y-%m-%d %H:%M UTC')"
Built on Linux x86_64 at 2026-04-13 19:54 UTC
for i in range(5):
    print(i)
0
1
2
3
4

Tip

If you’re reading elsewhere, see https://zorto.dev for the rendered results of the code blocks above.