Skip to content

sschaetz/pandoctylus

Repository files navigation

Pandoctylus

Pandoctylus Logo

A crazy and opinionated way of generating documents.

Installation

pip install pandoctylus

Use

Check out the example project in examples/project1 to understand how to make a document. Key ingredients:

  • define the document as yaml file in docs/ sub-dir
  • create or pick an existing jinja template and refernece it in the yaml file
  • create or pick an existing docx template and reference it in the yaml file
  • run the tool:
    python pandoctylus/pandoctylus.py \
      --root-dir examples/project1 \
      --output-dir ./output
  • enjoy the generated docs in ./output

Development

This project uses modern Python packaging with pyproject.toml. To set up the development environment:

  1. Clone the repository:
git clone https://github.com/yourusername/pandoctylus.git
cd pandoctylus
  1. Create a virtual environment and install development dependencies:
uv venv pandoctylus-venv
source .pandoctylus-venv/bin/activate 
uv pip install -e ".[dev]"
  1. Run tests:
pytest

Packaging and Publishing

To build and publish the package to PyPI:

  1. Install build tools:
uv pip install build twine
  1. Build the package:
python -m build
  1. Verify the distributions:
python -m twine check dist/*
  1. Upload to PyPI:
python -m twine upload dist/*

The package will be available at https://pypi.org/project/pandoctylus/

Features

  • Generate multiple documents from shared Markdown and YAML and a docx template.

License

MIT License

About

A crazy and opinionated way of generating documents

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages