Skip to content

Promote to production: EPUB Reader - #145

Merged
slaveofcode merged 2 commits into
mainfrom
develop
Aug 2, 2026
Merged

Promote to production: EPUB Reader#145
slaveofcode merged 2 commits into
mainfrom
develop

Conversation

@slaveofcode

Copy link
Copy Markdown
Owner

Promotes #144 — EPUB Reader (read .epub e-books in-browser) in the Documents category.

🤖 Generated with Claude Code

Kresna and others added 2 commits August 3, 2026 06:26
Open .epub e-books entirely client-side (epub.js): paginated reading view,
table of contents, arrow-key page turning and adjustable text size. Scripts
in the book are disabled and content renders in a sandboxed frame; nothing
is uploaded.

Security: epub.js pulls @xmldom/xmldom ^0.7.5 (the <0.8.13 XML-serialization
/ recursion-DoS advisories); pinned to the patched 0.8.13 via an npm override
(the browser uses native DOMParser, so xmldom isn't even on the runtime path —
this just clears the scanner). npm audit no longer flags epubjs/xmldom.

The ~250KB epub.js engine + shared jszip are named chunks (manualChunks) and
excluded from the PWA precache (workbox globIgnore), lazy-loaded on first use.
Pure TOC-flattening lib with 5 unit tests. Bilingual (EN + ID) UI, SEO, OG.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ubfx4XocHcECaL8twp9zsr
feat(documents): EPUB Reader — read e-books in the browser
@slaveofcode
slaveofcode merged commit 6de88e0 into main Aug 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant