markdown-to-epublisted
Install: claude install-skill dzivkovi/claude-skills
# markdown-to-epub
Turn Markdown into a clickable + listenable EPUB, optionally with a branded cover.
The engine is `pandoc`; this skill is the recipe, one stylesheet, and a cover
generator. Keep the conversion itself scriptless (see "Do not build").
## Why EPUB
It keeps links clickable (including `...&t=<seconds>` video deep-links) and is
text-to-speech readable on Kindle. Print and PDF are neither. A cover image makes
it show as a real book in the Kindle library instead of a blank placeholder.
## Step 0 - preflight the core dependency (pandoc)
Pandoc is the ONE required dependency. Before converting, run:
```bash
python "<SKILL_DIR>/scripts/setup/pandoc_preflight.py"
```
Exit 0 = ready. Exit 2 = missing: it prints the OS-specific install command
(winget/choco/scoop, brew, apt/dnf/pacman) and https://pandoc.org/installing.html.
Relay that and stop; do not auto-install a system package. (The cover step below
additionally needs Pillow; the core conversion does not.)
## Convert from the Markdown SOURCE, never from PDF or DOCX
Markdown holds the real links and headings. PDF->EPUB is lossy. If only a PDF/DOCX
exists, convert THAT to markdown first (`pandoc in.docx -o in.md`) as a last resort.
## Branded cover (optional; default ON for briefings and shared reading books)
Pandoc cannot compose a titled cover, so `scripts/make_cover.py` (Pillow) builds a
portrait PNG: brand background + logo + title + subtitle + author + a DATE stamp
(so multiple same-month versions are disting