DocBuildr
Build beautiful PDF books from online documentation.
DocBuildr is a command-line tool that crawls documentation websites, merges pages into a single book, and generates professional-quality Markdown, HTML, and PDF outputs.
Designed for developers, researchers, engineers, and scientists who want offline documentation with clean typography, mathematical rendering, and print-friendly layouts.
Features
- 📖 Crawl documentation websites automatically
- 📚 Merge multiple pages into a single book
- 📝 Generate clean Markdown output
- 🌐 Export standalone HTML
- 📄 Export print-ready PDF
- 🎨 Professional book layout
- 🖼 Responsive images
- 📊 Smart table formatting
- 💻 Optimized code blocks
- 📑 Automatic table of contents
- ➗ Offline KaTeX math rendering
- ✅ Syntax highlighting
- ✅ Unit-tested core components
- 🔄 GitHub Actions continuous integration
- ⚡ Simple command-line interface
Installation
Install from PyPI
pip install docbuildr
Install Chromium
playwright install chromium
Or install the latest development version
git clone https://github.com/MossKW/docbuildr.git
cd docbuildr
pip install -e ".[dev]"
Requirements
- Python 3.11+
- Playwright
- Chromium browser
Quick Start
docbuildr https://gthlab.au/panaroo --title "Panaroo User Guide"
Produces
output/
├── book.md
├── book.html
├── book.pdf
└── viewer.html
Current Features
Feature Status
Documentation crawler ✅ Markdown export ✅ HTML export ✅ PDF export ✅ Table of contents ✅ Cover page ✅ Smart tables ✅ Print layout ✅ Viewer ✅ Professional CLI ✅ Offline KaTeX rendering ✅ Syntax highlighting ✅ Unit tests ✅ GitHub Actions CI ✅ Theme engine 🚧 EPUB export 🚧 Search index 🚧 Plugin system 🚧
Roadmap
Upcoming
- Theme engine
- EPUB export
- Search index
- Plugin system
Development
pip install -e ".[dev]"
python -m compileall src
python -m pytest
python -m pytest --cov=docbuildr
Contributing
Contributions are welcome.
Please read CONTRIBUTING.md before submitting a pull request.
License
MIT License
Author
Developed by Moss.kw
Built with Python, Playwright, and modern web technologies.
Metadata
Release files for docbuildr 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| docbuildr-1.0.2.tar.gz | 2.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| docbuildr-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.7 MB
Release files / docbuildr-1.0.2.tar.gz
| Download URL | docbuildr-1.0.2.tar.gz |
|---|---|
| Size | 2.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
78fe10d11fc9709982263264be53dd78a2a3993f5b7de1bf0d891748b2659d83
|
|
BLAKE2b-256 checksum How to use checksums |
ff1cdb2dc99fa438231816836bb88b97e493cda3344eb3c9967b6a38bf182439
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.8
|
Release files / docbuildr-1.0.2-py3-none-any.whl
| Download URL | docbuildr-1.0.2-py3-none-any.whl |
|---|---|
| Size | 2.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1c6721679a97b016863e27b8d24d2bd003ec5e40b678bf8a7480dad89ac656e9
|
|
BLAKE2b-256 checksum How to use checksums |
38489feda7a6be6d7885b9cf40b2cff0f9e58f5fdf73c616bd31232d82d54608
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.8
|