Skip to content

Wire epub into the conversion engine, CLI, MCP server, and web UI #802

Description

@Mearman

Once #801's codec exists, every surface that already converts documents gains EPUB as a peer format. This is the wiring half, deliberately its own issue because a new codec and its integration into the engine and interfaces are separate review and release units.

  • Conversion engine (documents.js): register epub as both a source and a target in the composition engine's registry; the pathfinder then derives every epub↔{docx, odt, pdf, markdown, …} pair for free, which is the whole point of the registry + pathfinder over hand-written per-pair converters. epub→pdf rides the same flowable-source → fixed-layout-target lowering docx→pdf already takes.
  • CLI (document-cli): epub joins the conversion command's format list in both directions.
  • MCP server (document-mcp): the conversion tools accept and emit epub.
  • Web UI (documents): the converter surfaces epub alongside the existing formats.
  • Housekeeping per CONTRIBUTING's new-package checklist: the root README's package tables and the CLAUDE.md targets, the workspace and release-orchestrator registration, and the .github/release-republish.json entry plus attestation legs if any alternate publish names are wanted.

Blocked by #801 — nothing here is meaningful until a ContentDocument↔EPUB codec exists to wire.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions