Metadata-Version: 2.4
Name: docbuildr
Version: 1.0.4
Summary: Generate Markdown, HTML, and PDF books from online documentation.
Author-email: "Moss.kw" <k.pollapong@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/MossKW/docbuildr
Project-URL: Repository, https://github.com/MossKW/docbuildr
Project-URL: Issues, https://github.com/MossKW/docbuildr/issues
Project-URL: Documentation, https://github.com/MossKW/docbuildr
Keywords: documentation,markdown,pdf,html,playwright,static-site,book
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Documentation
Classifier: Topic :: Software Development :: Documentation
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: playwright>=1.62
Requires-Dist: beautifulsoup4>=4.15
Requires-Dist: jinja2>=3.1
Requires-Dist: lxml>=6.1
Requires-Dist: markdown>=3.8
Requires-Dist: markdownify>=1.2
Requires-Dist: Pygments>=2.19
Requires-Dist: requests>=2.32
Provides-Extra: dev
Requires-Dist: pytest>=8.4; extra == "dev"
Requires-Dist: pytest-cov>=6.0; extra == "dev"
Dynamic: license-file

<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="assets/logo-dark.svg">
    <img src="assets/logo-light.svg" alt="docbuildr" width="420">
  </picture>
</p>

<p align="center">
  <strong>Turn documentation websites into beautiful books.</strong>
</p>

<p align="center">
  Convert documentation websites into clean, offline-friendly <strong>Markdown</strong>, <strong>HTML</strong>, and <strong>PDF</strong> books with a single command.
</p>

<p align="center">

[![PyPI](https://img.shields.io/pypi/v/docbuildr.svg)](https://pypi.org/project/docbuildr/)
[![Python](https://img.shields.io/pypi/pyversions/docbuildr.svg)](https://pypi.org/project/docbuildr/)
[![License](https://img.shields.io/github/license/MossKW/docbuildr)](LICENSE)
[![Downloads](https://img.shields.io/pypi/dm/docbuildr)](https://pypi.org/project/docbuildr/)

</p>

---

## ✨ Features

| Feature | Status |
|---------|:------:|
| Crawl documentation websites | ✅ |
| Merge multiple pages into one book | ✅ |
| Markdown export | ✅ |
| HTML export | ✅ |
| Print-ready PDF export | ✅ |
| Interactive HTML Viewer | ✅ |
| Automatic table of contents | ✅ |
| Syntax-highlighted code blocks | ✅ |
| Mermaid diagrams | ✅ |
| Offline KaTeX rendering | ✅ |
| Automatic image downloading | ✅ |
| Unit-tested core components | ✅ |

---

## 📦 Installation

```bash
pip install docbuildr
playwright install chromium
```

---

## 🚀 Quick Start

```bash
docbuildr https://gthlab.au/panaroo
```

Generated output:

```text
output/
├── book.md
├── book.html
├── viewer.html
└── book.pdf
```

---

## 📚 Supported Content

- Markdown
- Tables
- Images
- Code blocks
- Mermaid diagrams
- KaTeX equations
- Nested headings
- Internal links

---

## 💡 Why docbuildr?

Instead of manually saving web pages or printing documentation to PDF, **docbuildr** automatically:

- 📖 Crawls an entire documentation website
- 📚 Merges every page into a single book
- 📑 Generates a clean table of contents
- 🎨 Preserves syntax highlighting
- 📄 Produces beautiful print-ready PDF
- 🌐 Creates standalone HTML for offline reading

---

## 🛠 Development

```bash
git clone https://github.com/MossKW/docbuildr.git
cd docbuildr

pip install -e ".[dev]"

python -m pytest
python -m build
```

---

## 🗺 Roadmap

| Feature | Status |
|---------|:------:|
| Markdown Export | ✅ |
| HTML Export | ✅ |
| PDF Export | ✅ |
| HTML Viewer | ✅ |
| Mermaid Support | ✅ |
| KaTeX Support | ✅ |
| EPUB Export | 🚧 |
| Search Index | 🚧 |
| Theme Engine | 🚧 |
| Plugin System | 🚧 |

---

## 🤝 Contributing

Contributions are welcome!

Please read **[CONTRIBUTING.md](CONTRIBUTING.md)** before opening an issue or submitting a pull request.

---

## 📄 License

Released under the **MIT License**.

See **[LICENSE](LICENSE)** for details.

---

## 👨‍💻 Author

Developed by **Moss.kw**

GitHub: https://github.com/MossKW
