Readest
正式版
39
查看
0
讨论
58
收藏
photo_library 应用截图
new_releases 更新日志
Release Highlights
Audiobooks: Added Audiobookshelf support for streaming audiobooks and podcasts, and you can now pair an audiobook with its ebook to read along as it plays
Text-to-Speech: Added a lyric-style view that shows the sentences around the one being read, plus per-book offline voice downloads and steadier pauses between sentences
Library: You can now browse the web inside Readest to add books, choose which chapters to import from a web novel, hide covers for privacy, and watch download progress right on the shelf
Sharing: Added Nearby BookDrop to send and receive books between nearby devices over your local network, including KOReader devices
Reading: Added customizable keyboard and mouse shortcuts, Yomitan dictionary support, a full-screen book cover view, and right-to-left page order for comics and fixed-layout books
Reading: The Notebook is now a full writing workspace, where your notes save as you type, sync across devices, and link back to the passage they came from
Footnotes: Footnote popups no longer get cut off, let you select and look up text, and can jump straight to the note's place in the book
PDF: You can now select text across page boundaries, copy paragraphs without broken line breaks, and see the printed page numbers as reference pages
Sync: Your book groups and shelves now sync, file sync between devices settles reliably, highlights you delete in KOReader come across, and your progress survives an OPDS re-download
More: Fixed crashes on launch, garbled AZW3 books, the reading position drifting after rotating the screen, and unreadable highlights on e-ink screens
What's Changed
fix(ios): App Review launch crash, CarPlay crash on connect, and main thread hangs by @chrox in #5590
fix(opds): make the title bar draggable in the online library view by @chrox in #5592
fix(opds): filter incompatible download formats and offer one-click EPUB by @chrox in #5593
fix(sync): drop the Origin header from OAuth token requests by @chrox in #5604
fix(android): stop claiming APKs and other downloads as openable books by @chrox in #5610
feat(localsend): send and receive books over the local network by @chrox in #5611
fix(library): release TXT sources and chapter HTML during import by @ChuwuYo in #5607
fix(library): checkpoint, serialize, and pool folder imports by @chrox in #5615
fix(translation): gate Enable Translation on book availability by @chrox in #5617
docs(readme): restore the Sponsors / TestMu AI section by @chrox in #5619
fix(translate): send Bing language codes in the Azure provider by @chrox in #5620
fix(library): stop a long press from selecting and then deselecting a book by @chrox in #5621
fix(ci): stop cargo pulling the flutter SDK for the localsend dep by @chrox in #5622
fix(reader): isolate the book cell to drop the Linux black corner by @PolybiusPro in #5618
fix(popup): stop mounting the filtered pointer triangle at rest by @chrox in #5628
fix(localsend): let Readest devices discover each other by @chrox in #5626
fix(sync): recover KOReader progress when a chapter is not well-formed XML by @chrox in #5630
fix(ci): gate build_tauri_app on tauri paths and give webdriver its own timeout by @chrox in #5644
feat(ci): Added new step to release workflow to send release notes to a Discord channel by @sloaner in #5637
fix(reader): commit settled image zoom into the layout size, closes #5633 by @chrox in #5639
fix(novel): retry transient fetch failures and backfill work metadata by @chrox in #5650
fix(markdown): title imported books after the file, not the first heading by @chrox in #5653
fix(sanitizer): render Persian/Arabic half-space by converting misused RLM to ZWNJ by @shahram7 in #5651
fix(reader): stop iOS 16 WebContent crash when opening a book by @chrox in #5654
feat(reader): flash the target of in-page footnote jumps, closes #5647 by @chrox in #5655
fix(koplugin): extract self-update with ffi/archiver on KOReader 2026.07+ by @chrox in #5656
fix(reader): render fixed-layout pages as authored in dark mode, closes #5649 by @chrox in #5657
fix(reader): disable text autosizing in fixed-layout books, closes #5641 by @chrox in #5659
ci: raise nightly and release build timeouts to 90 minutes by @chrox in #5664
fix(opds): stop auto-downloaded books from vanishing on restart by @chrox in #5665
fix(iap): re-verify restored iOS one-time purchases with the server by @chrox in #5669
chore(deps): bump the github-actions group with 6 updates by @dependabot[bot] in #5668
fix(ui): size the alert surface off its container, not its content by @WantenMN in #5662
fix(koplugin): push reading stats in bounded chunks, closes #5666 by @chrox in #5670
feat(reader): jump to the start or end of the book with Home/End by @chrox in #5673
fix(sync): never show a future Last Synced time from a clock-skewed peer by @chrox in #5674
fix(reader): update progress during Auto Scroll and put slider overlay values on top by @chrox in #5676
fix(reader): reach the last page of the book on iOS by @chrox in #5678
feat(reader): scroll Auto Scroll smoothly at low speeds by @chrox in #5679
chore: update agent memories by @chrox in #5682
fix(library): allow unchecking Read books in place for registered folders, closes #5680 by @chrox in #5685
fix(reader): keep table label columns from collapsing by @chrox in #5686
feat(tts): scroll to the current chapter when opening Offline Audio by @gfreitash in #5684
feat(koplugin): LocalSend receive and send for KOReader devices by @chrox in #5687
fix(sync): create the replica bundle dir before downloading, closes #5675 by @chrox in #5700
chore(koplugin): build nightly plugin zip and default to device targets by @chrox in #5699
feat(sync): add cloud shelves and safe provider deletion by @chrox in #5701
fix(android): gate gamepad polling on controller connection by @chrox in #5702
fix(dictionary): recover StarDict searches after an empty result by @chrox in #5705
feat(tts): symmetric minimal mini-player with centered play button by @chrox in #5707
fix(reader): remove header controls duplicated by the mobile footer bar by @chrox in #5708
feat(sync): optional document metadata on KOSync progress uploads by @chrisbutler in #5704
feat(reader): resume Auto Scroll when reopening a book by @chrox in #5710
fix(reader): support page turner key combinations by @chrox in #5709
feat(reader): right-to-left page order for fixed-layout books by @chrox in #5712
fix(reader): avoid wide word gaps from authored text-wrap pretty, closes #5582 by @chrox in #5718
fix(reader): restore scrolled PDF highlights by @chrox in #5719
fix(sync): remove the mixed-fleet info toast, closes #5720 by @chrox in #5726
fix(sync): sync the reference page count and stop import wiping configs, closes #5716 by @chrox in #5727
fix(reader): highlight search results visible across chapter boundary by @WantenMN in #5725
fix(reader): drop the 500-result cap from in-book search by @chrox in #5728
fix(annotator): drop the selection when the instant dictionary opens, closes #5585 by @chrox in #5730
fix(reader): neutralize fixed backgrounds and drop negative margins by @chrox in #5729
fix(library): optimize bookshelf covers in background, closes #5632 by @chrox in #5731
fix(eink): make e-ink highlights and chips visible, closes #5667 by @chrox in #5735
feat(wordlens): add the en-vi gloss pack, sync incrementally by @chrox in #5737
feat(wordlens): add the en-hu gloss pack by @chrox in #5738
fix(wordlens): key the manifest diff on pack routing fields too by @chrox in #5739
chore: update agent memories by @chrox in #5740
feat(library): add hide-covers privacy option for the bookshelf by @WantenMN in #5733
feat(tts): queue chapter downloads with per-book persistence by @gfreitash in #5690
feat(library): show download progress overlay on book covers by @WantenMN in #5736
feat(annotator): support text selection tools in footnote popups by @chrox in #5744
feat(reader): pair local audiobooks with ebooks by @chrox in #5754
fix(tts): make sentence and paragraph pauses consistent by @chrox in #5753
fix(reader): keep chapter images openable after repeated footnote popups by @chrox in #5756
docs: add contributor code of conduct by @chrox in #5758
fix(opds): honor the Manage Sync Books toggle for automatic cloud uploads by @chrox in #5759
feat(opds): confirm auto-download toggles and allow catalog reordering by @chrox in #5760
feat(i18n): add Georgian translations by @chrox in #5763
fix(cbz): order split chapter folders base-first by @chrox in #5762
fix(opds): drop the webview Origin header on native requests by @NoaHimesaka1873 in #5765
feat(dictionaries): add bundled plugin and Yomitan support by @chrox in #5764
feat: package for nix by @dastarruer in #5605
fix(reader): translate iframe text without duplicating TTS by @Columpio in #5772
fix(tts): allow chapters sharing sentences with earlier packs to download by @gfreitash in #5768
fix(deps): resolve open Dependabot alerts by @chrox in #5778
fix(nix): update pnpmDeps hash and verify dep hashes on PRs by @chrox in #5779
fix(library): recover from a failed startup instead of rendering a blank window by @chrox in #5789
chore(deps): bump the github-actions group with 7 updates by @dependabot[bot] in #5796
docs: use git input instead of github input by @dastarruer in #5791
feat: Audiobookshelf integration with audiobook streaming and podcasts by @chrox in #5801
fix(reader): extend pull-to-bookmark to fixed layout and yield to late selection by @chrox in #5802
feat(reader): expose data-eink on the book document for per-device custom CSS by @chrox in #5803
fix(android): keep the reader alive when a Bluetooth controller connects (#5799) by @chrox in #5804
fix(reader): render markdown in the note bubble popup, closes #5785 by @chrox in #5805
feat(reader): add inline note editing by @libbybar in #5780
feat(reader): expose book title and series as data attributes for custom UI CSS, closes #5776 by @chrox in #5806
feat(reader): show PDF page labels as reference pages, closes #5822 by @chrox in #5824
feat(rsvp): add exact WPM entry and 10 WPM nudge to the speed dropdown, closes #5820 by @chrox in #5825
fix(translate): follow Bing regional host and show why a translation failed by @chrox in #5826
feat(reader): join PDF line wraps into paragraphs when copying, closes #5814 by @chrox in #5828
fix(annotator): hide the range editor handles while a lookup popup is open, closes #5815 by @chrox in #5829
feat(reader): show the book cover full screen from the sidebar and book details, closes #5813 by @chrox in #5827
perf(sync): merge stat_pages pushes in one upsert_stat_pages RPC by @chrox in #5832
feat(reader): select text across PDF pages as one selection, closes #5809 by @chrox in #5831
fix(koplugin): pull reading stats in bounded pages by @chrox in #5833
feat(stats): tier stat_pages history into R2 segments behind a 7-day hot window by @chrox in #5835
chore: update agent memories by @chrox in #5840
fix(audiobookshelf): hide ABS books without a server row and backfill covers unauthenticated by @chrox in #5841
fix(stats): survive PostgREST's row cap when building archive segments by @chrox in #5844
chore(stats): enable the archive compaction cron by @chrox in #5845
fix(sync): send S3 object keys in SigV4 canonical form by @chrox in #5849
fix(nix): match the Android AVD ABI to the host architecture (#5732) by @chrox in #5850
fix(koplugin): stop auto sync from prompting for Wi-Fi on book open and wake by @chrox in #5848
fix(backup): export only live library books and reclaim orphaned book files by @chrox in #5851
fix(reader): keep the reading position across screen rotations by @chrox in #5855
fix(sync): sync highlight deletions from KOReader to Readest by @chrox in #5853
feat(reader): pair an Audiobookshelf audiobook and read along (#5807) by @chrox in #5856
feat(reader): let users pick the Hardcover book a file syncs to, closes #5846 by @chrox in #5857
feat(toc): wrap long headings onto multiple lines instead of truncating by @chrox in #5858
fix(bookorbit): list the open book under Unmatched KOReader Books for manual linking by @chrox in #5860
fix(wordlens): build kaikki packs from the raw wiktextract dump by @chrox in #5861
fix(reader): move a paired audiobook by audio and decode WebP covers (#5863) by @chrox in #5865
fix(sync): stop OPDS re-downloads from losing reading progress (#5859) by @chrox in #5866
fix(reader): resolve media that book scripts add after the section loads, closes #1812 by @chrox in #5868
fix(sync): shelve an imported book on other devices without opening it first by @chrox in #5869
feat(library): add From Web Browser import with an in-app browser (#5775) by @chrox in #5870
fix(reader): render the IDPF EPUB 3 samples correctly (#480) by @chrox in #5872
fix(windows): match the main window's scroll bar style in clip and browser windows by @chrox in #5873
fix(library): rubber-band the bookshelf at both edges and keep the reader from overscrolling by @jadhavgaurav in #5867
fix(android): stop the launch crash on covers that decode 1px tall by @chrox in #5874
chore: update agent memories by @chrox in #5875
feat(ui): migrate to daisyUI 5 and Tailwind CSS 4 by @chrox in #5884
fix(library): save the new data location when migrating an empty library by @jadhavgaurav in #5878
fix(sync): apply pulled file-sync progress to the live reader by @chrox in #5886
feat(reader): jump from a footnote popup to the location in the book by @chrox in #5889
feat(library): select chapters when importing web novels by @chrox in #5892
chore(deps): upgrade to TypeScript 7 by @chrox in #5893
fix(ui): size toasts to their message and fade dialogs out whole by @chrox in #5894
fix(library): refresh PDF metadata on re-import by @chrox in #5895
fix(reader): do not truncate footnote popups by @alexander-pecheny in #5887
fix(reader): make cross-page selection actually work by @alexander-pecheny in #5888
chore(deps): bump the github-actions group with 6 updates by @dependabot[bot] in #5902
fix(android): migrate Google Play Billing to v9 by @chrox in #5896
fix: folder import of Markdown, widget opens, comic zoom, selection handle and TTS word highlight by @chrox in #5903
fix(ui): restore the daisyUI 4 loading dots animation by @chrox in #5906
fix(sync): converge multi-device file sync (#5900) by @jadhavgaurav in #5905
feat(tts): lyric-style sentence view in the Read Aloud player (#5755) by @chrox in #5908
fix(tts): queue a lyric reload requested during an in-flight fetch by @chrox in #5909
feat(shortcuts): add customizable keyboard and mouse bindings by @WhiteHades in #5907
fix(translate): Chinese targets, provider rate limits, and translator popup layout by @chrox in #5913
fix(android): avoid full PDF parsing during import by @chrox in #5914
feat(localsend): brand the LAN transfer feature as Nearby BookDrop by @chrox in #5915
fix(ui): paint modal boxes that sit outside an open daisyUI modal by @chrox in #5916
fix(mobi): keep AZW3 text and TOC intact when section loads overlap by @chrox in #5920
fix(sync): report third-party sync status in the reader menu (#5910) by @chrox in #5922
fix(sync): resolve book groups and metadata on their own clock (#5911, #5912) by @chrox in #5921
fix(ui): search cloud storage files on demand instead of while typing (#5923) by @chrox in #5925
fix(reader): stop the a11y skip link from padding RTL sections with blank pages (#5924) by @chrox in #5926
fix(ui): align the keyboard shortcuts header with its group titles by @chrox in #5927
feat(reader): Notebook as a linked writing workspace by @chrox in #5928
release: version 0.12.6 by @chrox in #5929
New Contributors
@sloaner made their first contribution in #5637
@gfreitash made their first contribution in #5684
@chrisbutler made their first contribution in #5704
@NoaHimesaka1873 made their first contribution in #5765
@libbybar made their first contribution in #5780
@jadhavgaurav made their first contribution in #5867
description 应用介绍
Readest:你的全能跨平台私人书房
无论你是沉浸于小说的文学爱好者,还是需要深度钻研外文文献、技术手册的专业人士,Readest 都能为你提供前所未有的阅读体验。作为一款真正意义上的全平台现代化电子书阅读器,Readest 让你在手机、电脑和网页之间自由穿梭,随时随地接续你的阅读心流。
核心功能亮点:
一处阅读,处处同步
告别繁琐的文件传输。你的电子书、阅读进度、高亮笔记和书签,都会在 iOS、安卓、Windows、macOS 和网页端实时无缝同步。
通吃所有主流格式
无需转换,直接打开。全面支持 EPUB、MOBI、AZW3、FB2、CBZ 漫画格式以及纯文本 TXT,并提供实验性的 PDF 阅读支持。
打造专属于你的阅读排版
支持传统的模拟翻页与流畅的滚动阅读模式。你可以随心所欲地调整字体、行距、亮暗模式与主题色彩。对于技术开发者,阅读器原生支持代码块语法高亮,带来极佳的视觉体验。
外文与深度学习的最强辅助
内置词典与维基百科,遇到生词划词即刻解答。集成 DeepL 和 Yandex 强大翻译引擎,从单句到整书翻译,扫清外文阅读障碍。独家支持双屏平行阅读模式,轻松实现两本书籍或中英双语文档的对照阅读。
智能多语言听书
支持文本转语音朗读功能,即使在同一本书中遇到不同语言的段落,也能自动流畅切换,享受高质量的听书体验。
管理海量私人书库
它不仅是阅读器,更是你的图书管家。自带完善的书库分类整理功能,支持整书全文搜索,并能轻松接入 OPDS 协议与局域网 Calibre 书库,随时获取海量资源。
纯粹专注与无障碍辅助
全面支持各大系统的屏幕阅读器操作。特有阅读标尺、逐段高亮和速读模式,帮助你集中注意力,成倍提升阅读效率。
关于 Readest:
这是一款由热爱阅读的开发者们打造的开源免费项目。无广告打扰,完全尊重并保护你的本地数据隐私。在这里,没有繁杂的社交推荐,只有属于你和文字的静谧时光。立即下载 Readest,重新找回沉浸阅读的乐趣。
项目地址:https://github.com/readest/readest