Skip to main content

Turn documentation sites into an EPUB (Kindle-friendly).

Project description

docs2epub

Turn documentation sites into an EPUB (Kindle-friendly).

Initial focus: Docusaurus sites that expose a Next button (docs navigation).

Install (dev)

This project uses Python 3.12+.

uv sync
uv run docs2epub --help

Usage

uvx (no install)

uvx docs2epub \
  https://www.techinterviewhandbook.org/software-engineering-interview-guide/ \
  tech-interview-handbook.epub

# Optional (override inferred metadata)
uvx docs2epub \
  https://www.techinterviewhandbook.org/software-engineering-interview-guide/ \
  tech-interview-handbook.epub \
  --title "Tech Interview Handbook" \
  --author "Yangshun Tay"

Docusaurus “Next” crawl

# Default output is EPUB2 (Kindle-friendly) via pandoc
uv run docs2epub \
  --start-url "https://www.techinterviewhandbook.org/software-engineering-interview-guide/" \
  --out "dist/tech-interview-handbook.epub" \
  --title "Tech Interview Handbook" \
  --author "Yangshun Tay"

# Optional: build EPUB3 (ebooklib)
uv run docs2epub \
  --format epub3 \
  --start-url "https://www.techinterviewhandbook.org/software-engineering-interview-guide/" \
  --out "dist/tech-interview-handbook.epub" \
  --title "Tech Interview Handbook" \
  --author "Yangshun Tay"

Roadmap

  • Add additional discovery strategies: sitemap.xml, sidebar parsing, and explicit link lists.
  • Optional: send-to-kindle (email), once Gmail auth is set up.

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

docs2epub-0.1.6.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

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

docs2epub-0.1.6-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file docs2epub-0.1.6.tar.gz.

File metadata

  • Download URL: docs2epub-0.1.6.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for docs2epub-0.1.6.tar.gz
Algorithm Hash digest
SHA256 22d35773145ce19f63a8627302d898bd76b7eebaae12c2317db21485c3845576
MD5 037cc86e241ae80021ee3616e6f5cb1c
BLAKE2b-256 ead67cccb2c4808fcd2fd65ebe93f3b2b146c7b14554159a3c20676ce3cd6999

See more details on using hashes here.

File details

Details for the file docs2epub-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: docs2epub-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for docs2epub-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 42d90ef364b3198c657f2f19c9c3b521a58053c180381e4c15c3114122a93ecc
MD5 24714c8c082b1eca9a2e0de5cc5e1925
BLAKE2b-256 2b7c047d30af87bce4c2d7b05e160792183fb98c4b56364e24cebefb9997f2e8

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