Skip to main content

Pandocster: a CLI helper around pandoc workflows, it helps you to build your documentation from markdown files.

Project description

Pandocster

Pandocster is a CLI helper around pandoc workflows. It builds a single document (PDF, HTML, and other formats) from a tree of Markdown files with minimal configuration.

Quick start

$ pandocster check
$ pandocster build ./docs/md --to docx

The resulting DOCX (or other format) is written in the current directory; the default output name is derived from the current working directory unless you pass --file-name.

What it does

  • Build — Runs pandoc on the prepared tree with configurable options, metadata, and Lua filters. Includes built-in filters: absorb_nonvisual_paragraphs, header_offset, link_anchors, newpage. During preparation stage Pandocster builds a staging tree from a source Markdown directory: copies files, injects header-offset and anchor comments for structure, rewrites image links into a shared resources/ directory, and preprocesses reference-style links.
  • Checkpandocster check verifies that pandoc (≥3.8.3) and its Lua engine (≥5.4) are installed and sufficient.
  • Config — Optional pandocster.yaml in the project directory or ~/.config/pandocster/config.yaml globally. Use pandocster config show to print the effective config and pandocster config create to write a pandocster.yaml in the current directory.

How it works

  1. You simply run pandocster build <src> --to <format> (e.g. pdf, html) and you get standalone file.
  2. Config is loaded from the current directory (pandocster.yaml), then global config, then built-in defaults.
  3. Build collects all .md files under the build directory (with _index.md first per directory), runs pandoc with the configured filters and metadata, and writes the output in the current working directory as <file-name>.<format>. The build directory can be removed after success unless you pass --preserve-build.

Installation

Install Pandocster with pipx so the tool runs in an isolated environment and the pandocster command is available globally:

pipx install pandocster

From a local clone:

pipx install .

You must have pandoc (and its built-in Lua engine) installed separately. Run pandocster check to verify versions.

  • Windows: winget install JohnMacFarlane.Pandoc
  • Debian: sudo apt install pandoc.
  • RHEL: # dnf install pandoc.
  • Arch: pacman -S pandoc.

And there are more ways to install, please refer to official documentation https://pandoc.org/installing.html.

Requirements

  • Python ≥3.10
  • pandoc ≥3.8.3 with Lua ≥5.4

Commands

Command Description
pandocster check Verify pandoc and Lua versions
pandocster build <src> [build] --to <format> Prepare and render a document (e.g. --to pdf)
pandocster config show Print effective config as YAML
pandocster config create Write pandocster.yaml in the current directory

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pandocster-2.1.1.tar.gz (983.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pandocster-2.1.1-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

Details for the file pandocster-2.1.1.tar.gz.

File metadata

  • Download URL: pandocster-2.1.1.tar.gz
  • Upload date:
  • Size: 983.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pandocster-2.1.1.tar.gz
Algorithm Hash digest
SHA256 d94cfdc163e54bede8c2b47e86a6a7393174d39c87e754fed7b8f5171e1eb22f
MD5 adf964358e1df3fc54edd89c5bf7bbfc
BLAKE2b-256 6e12217fe786899f1db62f9578adf4c3c7bb2be8c28cd05ae039ea8296e693a5

See more details on using hashes here.

File details

Details for the file pandocster-2.1.1-py3-none-any.whl.

File metadata

  • Download URL: pandocster-2.1.1-py3-none-any.whl
  • Upload date:
  • Size: 25.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pandocster-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0f4ab6c112372e19e2d9571324d8d38dcd2bba6dde866d855104230505a845e5
MD5 1194c386bb1a3089b45202f64e1c05ea
BLAKE2b-256 3996d985e30f0773a601b53b29c37eb78f79bca649694926158def03632d8c60

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page