Skip to content
Petlja's tools for interactive books
JavaScript Python HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

PetljaDoc - Petlja's tool for interactive books

The tool is based on and and includes:

  • additional Sphinx extensions
  • partial Pygame implementation for Sculpt (
  • additional ActiveCode features
  • customized Sphinx theme
  • customized project template
  • petljadoc command line interface (CLI)

PetljaDoc currenty depends on forked RunestoneComonents, but we are gradually closing the gap with the upstream repository through pull requests.


Use pip to install DetljaDoc:

pip3 install

If you use Windows and previous command does not work, try:

py -3 -m pip install

CLI usage

petljadoc [OPTIONS] COMMAND [ARGS]...


  • --help    Show help message


  • init-runestone    Create a new Runestone project in your current directory
  • preview    Build a Runstone projec (like runestone build --all), open it in browser, watch for changes, rebuild changed files and refresh browser after rebuild (using sphinx-autobuild)
  • publish    Build a Runestone project (like runestone build --all) and copy produced content in docs subfolder (ready to be published using GitHub Pages)

By using petljadoc preview, an author may keep opened a browser window for preview. Any saved changes will be updated in browser in about 5-10 seconds.

petljadoc publish command helps an author to share a public preview of his work via GitHub Pages.

You can’t perform that action at this time.