MCPcopy
hub / github.com/readest/readest

github.com/readest/readest @v0.11.17 sqlite

repository ↗ · DeepWiki ↗ · release v0.11.17 ↗
7,226 symbols 24,267 edges 1,455 files 307 documented · 4%
README

Readest Logo

Readest

[Readest][link-website] is an open-source ebook reader designed for immersive and deep reading experiences. Built as a modern rewrite of Foliate, it leverages Next.js 16 and Tauri v2 to deliver a smooth, cross-platform experience across macOS, Windows, Linux, Android, iOS, and the Web.

[![Website][badge-website]][link-website] [![Web App][badge-web-app]][link-web-readest] [![OS][badge-platforms]][link-website]

[![Discord][badge-discord]][link-discord] [![Reddit][badge-reddit]][link-reddit] ![AGPL Licence][badge-license] [![Language Coverage][badge-language-coverage]][link-locales] [![Donate][badge-donate]][link-donate] [![Latest release][badge-release]][link-gh-releases] [![Last commit][badge-last-commit]][link-gh-commits] [![Commits][badge-commit-activity]][link-gh-pulse] [![][badge-hellogithub]][link-hellogithub] [![Ask DeepWiki][badge-deepwiki]][link-deepwiki]

FeaturesPlanned FeaturesScreenshotsDownloadsDocumentationGetting StartedTroubleshootingSupportLicense

Readest Banner

Features

✅ Implemented

Feature Description Status
Multi-Format Support Support EPUB, MOBI, KF8 (AZW3), FB2, CBZ, TXT, PDF
Scroll/Page View Modes Switch between scrolling or paginated reading modes.
Full-Text Search Search across the entire book to find relevant sections.
Annotations and Highlighting Add highlights, bookmarks, and notes to enhance your reading experience and use instant mode for quicker interactions.
Dictionary/Wikipedia Lookup Instantly look up words and terms when reading.
[Parallel Read][link-parallel-read] Read two books or documents simultaneously in a split-screen view.
Customize Font and Layout Adjust font, layout, theme mode, and theme colors for a personalized experience.
Code Syntax Highlighting Read software manuals with rich coloring of code examples.
File Association and Open With Quickly open files in Readest in your file browser with one-click.
Library Management Organize, sort, and manage your entire ebook library.
OPDS/Calibre Integration Integrate OPDS/Calibre to access online libraries and catalogs.
Translate with DeepL and Yandex From a single sentence to the entire book—translate instantly.
Text-to-Speech (TTS) Support Enjoy smooth, multilingual narration—even within a single book.
Sync across Platforms Synchronize book files, reading progress, notes, and bookmarks across all supported platforms.
[Sync with Koreader][link-kosync-wiki] Synchronize reading progress, notes, and bookmarks with [Koreader][link-koreader] devices.
Accessibility Provides full keyboard navigation and supports for screen readers such as VoiceOver, TalkBack, NVDA, and Orca.
Visual & Focus Aids Reading ruler, paragraph-by-paragraph reading mode, and speed reading features.

Planned Features

🛠 Building

🔄 Planned

Feature Description Priority
AI-Powered Summarization Generate summaries of books or chapters using AI for quick insights. 🛠
Advanced Reading Stats Track reading time, pages read, and more for detailed insights. 🛠
Audiobook Support Extend functionality to play and manage audiobooks. 🔄
Handwriting Annotations Add support for handwriting annotations using a pen on compatible devices. 🔄
In-Library Full-Text Search Search across your entire ebook library to find topics and quotes. 🔄

Stay tuned for continuous improvements and updates! Contributions and suggestions are always welcome—let's build the ultimate reading experience together. 😊

Screenshots

Annotations

TTS

DeepL

Footnote

Wikipedia

Theming Dark Mode


Downloads

Mobile Apps

Download on the App Store     Get it on Google Play

Platform-Specific Downloads

  • macOS / iOS / iPadOS : Search and install Readest on the [App Store][link-appstore], also available on TestFlight for beta test (send your Apple ID to readestapp@gmail.com to request access).
  • Windows / Linux / Android: Visit and download Readest at [https://readest.com][link-website] or the [Releases on GitHub][link-gh-releases].
  • Linux users can also install [Readest on Flathub][link-flathub].
  • Web: Visit and use Readest for Web at [https://web.readest.com][link-web-readest].

Documentation

Guides, tutorials, and FAQs for installing and using Readest live in the official documentation:

📖 [https://readest.com/docs][link-docs]

Requirements

  • Node.js and pnpm for Next.js development
  • Rust and Cargo for Tauri development

For the best experience to build Readest for yourself, use a recent version of Node.js and Rust. Refer to the Tauri documentation for details on setting up the development environment prerequisites on different platforms.

nvm install v24
nvm use v24
npm install -g pnpm
rustup update

Getting Started

To get started with Readest, follow these steps to clone and build the project.

1. Clone the Repository

git clone https://github.com/readest/readest.git
cd readest

2. Install Dependencies

# might need to rerun this when code is updated
git submodule update --init --recursive
pnpm install
# copy vendors dist libs to public directory
pnpm --filter @readest/readest-app setup-vendors

3. Verify Dependencies Installation

To confirm that all dependencies are correctly installed, run the following command:

pnpm tauri info

This command will display information about the installed Tauri dependencies and configuration on your platform. Note that the output may vary depending on the operating system and environment setup. Please review the output specific to your platform for any potential issues.

For Windows targets, “Build Tools for Visual Studio 2022” (or a higher edition of Visual Studio) and the “Desktop development with C++” workflow must be installed. For Windows ARM64 targets, the “VS 2022 C++ ARM64 build tools” and "C++ Clang Compiler for Windows" components must be installed. And make sure clang can be found in the path by adding C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\Llvm\x64\bin for example in the environment variable Path.

4. Build for Development

# Start development for the Tauri app
pnpm tauri dev
# or start development for the Web app
pnpm dev-web
# preview with OpenNext build for the Web app
pnpm preview

For Android:

# Initialize the Android environment (run once)
rm apps/readest-app/src-tauri/gen/android
pnpm tauri android init
pnpm tauri icon ../../data/icons/readest-book.png
git checkout apps/readest-app/src-tauri/gen/android

pnpm tauri android dev
# or if you want to dev on a real device
pnpm tauri android dev --host

For iOS:

# Set up the iOS environment (run once)
pnpm tauri ios init
pnpm tauri icon ../../data/icons/readest-book.png

pnpm tauri ios dev
# or if you want to dev on a real device
pnpm tauri ios dev --host

5. Build for Production

pnpm tauri build
pnpm tauri android build
pnpm tauri ios build

Please refer to our release script if you experience any issues: https://github.com/readest/readest/blob/main/.github/workflows/release.yml

6. Setup dev environment with Nix

If you have Nix installed, you can leverage flake to enter a development shell with all the necessary dependencies:

nix develop ./ops  # enter a dev shell for the web app
nix develop ./ops#ios # enter a dev shell for the ios app
nix develop ./ops#android # enter a dev shell for the android app

7. More information

Please check the [wiki][link-gh-wiki] of this project for more information on development.

Troubleshooting

1. Readest Won’t Launch on Windows (Missing Edge WebView2 Runtime)

Symptom

  • When you double-click readest.exe, nothing happens. No window appears, and Task Manager does not show the process.
  • This can affect both the standard installer and the portable version.

Cause

  • Microsoft Edge WebView2 Runtime is either missing, outdated, or improperly installed on your system. Readest depends on WebView2 to render the interface on Windows.

How to Fix

  1. Check if WebView2 is installed
  2. Open “Add or Remove Programs” (a.k.a. Apps & features) on Windows. Look for “Microsoft Edge WebView2 Runtime.”
  3. Install or Update WebView2
  4. Download the WebView2 Runtime directly from Microsoft: link.
  5. If you prefer an offline installer, download the offline package and run it as an Administrator.
  6. Re-run Readest
  7. After installing/updating WebView2, launch readest.exe again.
  8. If you still encounter problems, reboot your PC and try again.

Additional Tips

  • If reinstalling once doesn’t work, uninstall Edge WebView2 completely, then reinstall it with Administrator privileges.
  • Verify your Windows installation has the latest updates from Microsoft.

Still Stuck?

  • See Issue readest/readest#358 for further details, or head over to our [Discord][link-discord] server and open a support discussion with detailed logs of your environment and the steps you’ve taken.

2. AppImage Launches but Only Shows a Taskbar Icon

On some Arch Linux systems—especially those using Wayland—the Readest AppImage may briefly show an icon in the taskbar and then exit without opening a window.

You might see logs such as:

Could not create default EGL display: EGL_BAD_PARAMETER. Aborting...

This behavior is usually caused by compatibility issues between the bundled AppImage libraries and the system’s EGL / Wayland environment.

Workaround 1: Launch with LD_PRELOAD (recommended)

You can preload the system Wayland client library before launching the AppImage:

LD_PRELOAD=/usr/lib/libwayland-client.so /path/to/Readest.AppImage

This workaround has been confirmed to resolve the issue on affected systems.

Workaround 2: Use the Flatpak Version

If you prefer a more reliable out-of-the-box experience on Arch Linux, consider using the [Flatpak build on Flathub][link-flathub] instead. The Flatpak runtime helps avoid system library mismatches and tends to behave more consistently across di

Extension points exported contracts — how you extend this code

DatabaseService (Interface)
(no doc) [8 implementers]
apps/readest-app/src/types/database.ts
ClosableFile (Interface)
(no doc) [8 implementers]
apps/readest-app/src/utils/file.ts
AIProvider (Interface)
(no doc) [6 implementers]
apps/readest-app/src/services/ai/types.ts
DictBody (Interface)
(no doc) [7 implementers]
apps/readest-app/src/services/dictionaries/dictZip.ts
TTSClient (Interface)
(no doc) [6 implementers]
apps/readest-app/src/services/tts/TTSClient.ts

Core symbols most depended-on inside this repo

_
called by 2663
apps/readest-app/src/styles/themes.ts
push
called by 676
apps/readest-app/src/libs/replicaSyncClient.ts
get
called by 462
apps/readest-app/src/pages/api/deepl/translate.ts
replace
called by 443
apps/readest-app/src/services/ai/adapters/reedySourceStore.ts
now
called by 432
apps/readest-app/src/services/sync/providers/gdrive/PersistedDriveAuth.ts
error
called by 353
apps/readest-app/src/services/tts/TTSController.ts
slice
called by 342
apps/readest-app/src/utils/file.ts
dispatch
called by 317
apps/readest-app/src/utils/event.ts

Shape

Function 4,783
Method 1,184
Interface 984
Class 271
Enum 4

Languages

TypeScript100%

Modules by API surface

apps/readest-app/src/services/rsvp/RSVPController.ts84 symbols
apps/readest-app/src/types/system.ts77 symbols
apps/readest-app/src/utils/bridge.ts61 symbols
apps/readest-app/src/utils/file.ts56 symbols
apps/readest-app/src/services/appService.ts55 symbols
apps/readest-app/src/services/sync/providers/gdrive/GoogleDriveProvider.ts47 symbols
apps/readest-app/src/services/tts/TTSController.ts46 symbols
apps/readest-app/src/app/reader/hooks/useBookShortcuts.ts45 symbols
apps/readest-app/scripts/build-wordlens-data.mjs43 symbols
apps/readest-app/src/utils/book.ts41 symbols
apps/readest-app/src/utils/sel.ts40 symbols
apps/readest-app/src/utils/txt.ts39 symbols

Dependencies from manifests, versioned

@ai-sdk/openai-compatible2.0.48 · 1×
@ai-sdk/react3.0.49 · 1×
@assistant-ui/react0.11.56 · 1×
@assistant-ui/react-ai-sdk1.1.21 · 1×
@aws-sdk/client-s33.1000.0 · 1×
@aws-sdk/s3-request-presigner3.1000.0 · 1×
@biomejs/biome2.4.9 · 1×
@choochmeque/tauri-plugin-sharekit-api0.3.0 · 1×
@cloudflare/workers-types4.0.0 · 1×
@dnd-kit/core6.3.1 · 1×
@dnd-kit/sortable10.0.0 · 1×

For agents

$ claude mcp add readest \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact