Repository navigation
JoyRead 1.0.0
A fast, local-first desktop reader and library manager for manga, comics, and
PDFs. No accounts, no cloud, no telemetry — your books stay on your machine.
⚠️ First launch — macOS will say JoyRead is damaged
It isn't. This build carries an ad-hoc signature rather than an Apple
Developer ID certificate, and macOS shows that same message for any app it
cannot check with Apple.
After dragging JoyRead to your Applications folder, run this once in Terminal:
xattr -d com.apple.quarantine /Applications/JoyRead.appThen open it normally — you only need to do this once. The disk image repeats
these instructions in English, 日本語, and 简体中文.
Because the app is unsigned, it may also not appear under Apps/Launchpad until
you have opened it once from the Applications folder.
Requirements
macOS 13 or later, Apple Silicon. Windows and Linux are not published yet.
Reading
- ZIP/CBZ, 7z/CB7, RAR/CBR, and PDF
- Single- and two-page spreads with automatic spread detection
- Fit modes, reading direction including right-to-left, page transitions
- Bookmarks, table of contents, thumbnail navigation
- Per-book resume and reader settings
Library
- Import into a managed library, or open files in place
- Collections, tags, favourites, reading history
- Cover thumbnails with a cover editor
- Search, sort, filter
- Hidden Space for books kept off the main shelf
- The library folder can be moved, re-pointed, or reset
Performance
- Expensive archives (solid 7z, RAR, encrypted) are converted once in the
background into a shared extraction pool. On a 124 MB solid 7z this moved
page-turn p95 from 355 ms to 58 ms. - The bundled 7-Zip helper is the primary 7z read path, which moved
page-prepare p95 on that sample from ~1410 ms to ~300 ms. - PDF pages render asynchronously, so decoding never stalls the UI.
- Page, thumbnail, and extraction-pool budgets are all configurable.
Known limitations
- EPUB is not enabled. The novel reader is in the codebase but switched off
until it is finished. - Pages from encrypted archives are cached unencrypted. Settings → Privacy →
"Delete cached pages when closing" is on by default. - Archive passwords are visible to same-user processes during extraction,
for 7z, RAR, and ZIP using the legacy ZipCrypto cipher. AES-encrypted ZIP is
decrypted in-process and unaffected. - RAR is read-only, and by the terms of the bundled unRAR code JoyRead's RAR
support may not be used to build a RAR-compatible archiver. - Solid-RAR performance is unverified.
Documentation
Verifying your download
SHA-256 215778ddf4949c8866d171d114d8f931915372565c33c246a8cb7018ca664fa0
JoyRead is free software under the GNU GPL v3.0.
It redistributes Qt/PySide6, 7-Zip, and Pillow under their own licenses.