Skip to content

Shelf

Ebook production and validation pipeline

A job queue manager converting documents (DOCX, Markdown, ODT, HTML, RTF, TXT) to validated ebook packages (EPUB, MOBI, AZW3, PDF).

  • Docker container
  • Kubernetes Helm chart
  • 6 queue backends
  • 2 object-store backends
  • 5 notification drivers
  • 1 cache engine
  • 4 languages (EN, ES, FR, PT)
  • REST API + OpenAPI 3.0.3
  • Realtime WebSocket channels
  • MCP server for AI agents
Shelf screenshot

Shelf orchestrates ebook workflows: convert DOCX to EPUB, validate against W3C spec, check DAISY accessibility, extract metadata, and export to MOBI/AZW3/PDF. Built on Pandoc, EPUBCheck, Ace, and calibre. YAML task system composes pipelines. Redis job queue with webhooks. Perfect for publishing platforms, print-on-demand services, and anything producing ebooks from documents.

Shelf
What it does

Key features

Document → EPUB conversion via Pandoc (DOCX, Markdown, ODT, HTML, RTF, TXT)

EPUB validation via EPUBCheck (W3C conformance)

EPUB accessibility checking via Ace by DAISY

EPUB → MOBI, AZW3, PDF via calibre

Metadata extraction to JSON

YAML task composition (convert, validate, check, export, zip)

Redis job queue with webhooks

S3 storage integration

Shelf
Why it's different

Where it goes beyond the obvious

YAML composition lets non-developers build ebook pipelines

Combined W3C validation and DAISY accessibility checking

Tech highlights

  • Tools: Pandoc, EPUBCheck, Ace by DAISY, calibre (ebook-convert)
  • Formats: DOCX, Markdown, ODT, HTML, RTF, TXT → EPUB, MOBI, AZW3, PDF
  • Storage: S3/MinIO
  • Queue: Redis with webhooks

Built on

PandocEPUBCheckAce by DAISYcalibre ebook-convertLaTeX

REST API surface

  • POST /push Enqueue ebook job
  • GET /results Completed jobs with file list
  • GET /tasks convert-to-epub, validate-epub, accessibility-check, convert-to-mobi, convert-to-pdf
  • GET /workers Worker state
  • POST /workers/{id}/cancel Cancel
  • WS /ws Real-time status

Full spec at GET /openapi — Swagger UI at /swagger/

Your infrastructure

Backends you can actually pick from.

This service speaks the backends below natively. Swap with a single environment variable.

Queues

  • Redis
  • Kafka
  • RabbitMQ
  • STOMP
  • SQS
  • SNS

Cache

  • Redis

Object storage

  • S3
  • MinIO

Notifications

  • Slack
  • Discord
  • APNs
  • Teams
  • Telegram
Where it fits

Use cases

Publishing platforms converting manuscripts to ebook formats

Print-on-demand services validating ebook submissions

Self-publishing platforms automating ebook production

Academic publishers batch-converting course materials

Accessibility initiatives producing compliant ebooks

vs Ebook production and validation

Shelf vs Vellum (macOS), PressBooks, Draft2Digital

Ebook production pipeline without per-conversion SaaS fees

Compare head-to-head
Patterns

Architecture patterns featuring this service

Same family

More in media

Ready when you are

Deploy Shelf. Today.

One Docker image. One compose stack. One afternoon to production. Shelf is waiting.