Repository: /Users/admin/Storage/Git/homelab/marker
Marker is a small FastAPI app for turning local ebook/library files into Markdown. It scans a configured library, lets you browse and filter files in the browser, queues conversion jobs, and writes Markdown into a matching output tree while keeping the source folder structure intact.
What it supports
- PDF conversion with
marker-pdfwhen available, withpypdffallback - EPUB conversion via
ebooklib - MOBI/AZW3 conversion via Calibre's
ebook-convert - DOCX conversion via
pandoc - Plain text, Markdown, and HTML sources
How it works
- Scan the ebook library root for supported files.
- Filter, sort, and select files in the web UI.
- Queue conversion jobs through the API.
- Write Markdown output to a mirrored directory layout.
- Store job history and local service state on disk.
Repository shape
| Area | Purpose |
|---|---|
run.py |
Uvicorn entrypoint |
service/ |
FastAPI routes, scanner, queue, conversion, and writer logic |
web/ |
Browser UI |
data/ |
Local job history/state |
output/ |
Converted Markdown output |
Why it matters
Marker makes a homelab ebook library searchable and exportable without manually copying content between tools. It is especially useful when you want a local-first conversion workflow that preserves organization and keeps the generated Markdown on your own storage.