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.3
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.3.tar.gz | 2.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| docbuildr-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.7 MB
Release files / docbuildr-1.0.3.tar.gz
| Download URL | docbuildr-1.0.3.tar.gz |
|---|---|
| Size | 2.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
29f0d9e9728ea67477354906409ba85fb82ee979aeab12a5b4146bb2a7a4a7a8
|
|
BLAKE2b-256 checksum How to use checksums |
0937f7a613c1e41a2102e80a3208206b1f66d58119ea91360157cb9b9aa70504
|
| 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.3-py3-none-any.whl
| Download URL | docbuildr-1.0.3-py3-none-any.whl |
|---|---|
| Size | 2.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3cf855af149c561e364501f00059f71a473096ffa651cda43667066cc1d33d24
|
|
BLAKE2b-256 checksum How to use checksums |
b90a64f524a87a73d076e09fe080caf637751647f9ef0c458034f8a5c6f59ec5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.8
|