readest is a free, open source publishing project written in TypeScript and released under AGPL-3.0. It has 25,874 GitHub stars, 1,805 forks and 145 open issues, and was last pushed 5 hours ago. On this registry it ranks #5 of 54 tracked projects in Publishing, with 5 head-to-head comparisons available. It gained 1,129 stars over the last 30 tracked days.

What is readest?

Readest is an open-source, cross-platform ebook reader built with Next.js 16 and Tauri v2 for readers who want one modern library across macOS, Windows, Linux, Android, iOS, and the web.

What it is

Readest is an AGPL-3.0 licensed TypeScript application that serves as a modern rewrite of Foliate. It pairs Next.js 16 for the interface with Tauri v2 for native packaging, which lets a single codebase ship as a desktop app, a mobile app, and a web app rather than as separate platform builds. It lives in the Tauri and Next.js ecosystem, and its topic list places it alongside Calibre, KOReader, EPUB, MOBI, and OPDS tooling.

The concrete problem it replaces is reading spread across disconnected apps: a Foliate-style desktop reader on one machine, a phone reader elsewhere, and no shared progress. Readest adds cross-platform sync of book files, reading progress, notes, and bookmarks, library management, and OPDS/Calibre catalog access. Where Foliate targeted Linux desktops first, Readest targets all six platforms at once, which is the gap it fills.

Key capabilities

  • Reads EPUB, PDF, MOBI, KF8 (AZW3), FB2, CBZ, TXT, and Markdown files, with scroll or paginated view modes.
  • Syncs book files, reading progress, notes, and bookmarks across platforms, and syncs progress, notes, and bookmarks with KOReader devices.
  • Integrates OPDS and Calibre to pull in online libraries and catalogs.
  • Plays audiobooks and reads embedded EPUB 3 Media Overlays with timed highlighting, or pairs a reflowable EPUB with local DRM-free MP3, M4A, or M4B narration; Storyteller remains an option for phrase-aligned EPUBs.
  • Offers dictionary and Wikipedia lookup, including importing local packs such as Yomitan ZIP and RDICT formats from Settings → Custom Dictionaries.
  • Supports translation with DeepL and Yandex, multilingual text-to-speech, full-text search inside a book or across the current shelf, and parallel read in a split-screen view.
  • Provides accessibility through full keyboard navigation and screen readers including VoiceOver, TalkBack, NVDA, and Orca, plus reading ruler, paragraph-by-paragraph mode, and speed reading aids.

Who uses it and how

  • Readers who own several devices keep one library and one reading position instead of reconciling separate apps by hand.
  • KOReader users keep progress, notes, and bookmarks in step with their dedicated e-ink devices.
  • Language learners and students lean on dictionary packs, DeepL and Yandex translation, and TTS narration inside the same reading view.
  • Users with accessibility needs rely on keyboard-only navigation and screen reader support across desktop and mobile.
  • People with existing Calibre or OPDS catalogs connect those sources rather than rebuilding a library.

Getting started

The README points to a hosted web app at readest.com and to native downloads for each platform, with a Getting Started section in the documentation covering installation.

How it compares

Among the tools named in its own facts, Readest sits above Foliate as a cross-platform rewrite that keeps the same reading focus while adding sync, mobile, and web targets, and it sits beside KOReader by interoperating with it for progress sync rather than competing for the same devices. Calibre and OPDS support make it a reader for libraries people already maintain, not a replacement for the catalog itself.

When to use it — and when not to

Pick Readest if you want one reader across desktop, mobile, and web with sync and Calibre or OPDS integration. Do not pick it if you need a reader that is fully documented for self-hosted deployment: the provided README excerpt describes sync and catalogs but does not spell out the backend, storage, or account services a self-hoster would operate, and several items still sit under Planned or Building rather than shipped. The repository also carries a substantial open issue count and an AGPL-3.0 licence, which matters if you intend to embed it in proprietary work.

project readme (upstream, from github) — read inline
Readest Logo

Readest


Readest 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 Web App OS
Discord Reddit AGPL Licence Language Coverage Donate Latest release Last commit Commits Ask DeepWiki

Features • Planned Features • Screenshots • Downloads • Documentation • Getting Started • Troubleshooting • Support • License

Features

✅ Implemented

Feature Description Status
Multi-Format Support Support EPUB, PDF, MOBI, KF8 (AZW3), FB2, CBZ, TXT, MD (Markdown) ✅
Scroll/Page View Modes Switch between scrolling or paginated reading modes. ✅
Full-Text Search Search inside a book or across the current library shelf 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 Look up words with built-in sources or import local packs, including Yomitan ZIP/RDICT, from Settings → Custom Dictionaries. ✅
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. ✅
Web Page Clipping Open websites, sign in, and clip pages with From Web Browser. From Web Novel can reuse your browser session to import selected chapters and their images. ✅
Translate with DeepL and Yandex From a single sentence to the entire book—translate instantly. ✅
Audiobook Support Extend functionality to play and manage audiobooks. ✅
Text-to-Speech (TTS) Support Enjoy smooth, multilingual narration—even within a single book. ✅
Read-Along Narration Play embedded EPUB 3 Media Overlays with timed highlighting, or pair a reflowable EPUB locally with DRM-free MP3, M4A, or M4B narration. Storyteller remains an option for generating phrase-aligned EPUBs. ✅
Sync across Platforms Synchronize book files, reading progress, notes, and bookmarks across all supported platforms. ✅
Sync with Koreader Synchronize reading progress, notes, and bookmarks with Koreader devices. ✅
Accessibility Provides full keyboard navigation and support 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. 🛠
Handwriting Annotations Add support for handwriting annotations using a pen on compatible devices. 🔄

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

Nix

[!NOTE] The Nix package supports x86_64-linux only. nix-darwin is not supported.

Try it without installing. --accept-flake-config opts in to the project's binary cache; without it Nix builds the whole Rust/Tauri stack from source.

nix run --accept-flake-config github:readest/readest

To install it, add the input to your flake.nix:

# Due to a limitation in how Nix fetches submodules, a regular GitHub input type will fail to evaluate.
inputs.readest = {
  url = "https://github.com/readest/readest.git";
  type = "git";
  submodules = true;
};

then in configuration.nix add the package and the cache. The cache is needed here as well because a flake input's own nixConfig does not apply to your system build:

environment.systemPackages = [
  inputs.readest.packages.${pkgs.stdenv.hostPlatform.system}.default
];

nix.settings = {
  substituters = [ "https://readest.cachix.org" ];
  trusted-public-keys = [
    "readest.cachix.org-1:KvKAePcZZCZB8ytFIAOGdgN3VRdmFHGRMHqMVckbt5c="
  ];
};

Documentation

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

📖 https://readest.com/docs

Contributor references live in the repository: architecture, code layout, and testing.

Building from Source

To build Readest from the latest commit, see Getting Started.

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
    • Open “Add or Remove Programs” (a.k.a. Apps & features) on Windows. Look for “Microsoft Edge WebView2 Runtime.”
  2. Install or Update WebView2
    • Download the WebView2 Runtime directly from Microsoft: link.
    • If you prefer an offline installer, download the offline package and run it as an Administrator.
  3. Re-run Readest
    • After installing/updating WebView2, launch readest.exe again.
    • 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 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 instead. The Flatpak runtime helps avoid system library mismatches and tends to behave more consistently across different Wayland and X11 setups.

Contributors

Readest is open-source, and contributions are welcome! Feel free to open issues, suggest features, or submit pull requests. Please review our contributing guidelines and Code of Conduct before you start. We also welcome you to join our Discord community for either support or contributing guidance.

A table of avatars from the project's contributors

Support

If Readest has been useful to you, consider supporting its development at donate.readest.com, where you'll find all available donation methods, including GitHub Sponsors, PayPal, card payments, and crypto. Your contribution helps us fix bugs faster, improve performance, and keep building great features.

Sponsors

License

Readest is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See the LICENSE file for details.

The following libraries and frameworks are used in this software:

  • foliate-js, which is MIT licensed.
  • zip.js, which is licensed under the BSD-3-Clause license.
  • fflate, which is MIT licensed.
  • PDF.js, which is licensed under Apache License 2.0.
  • daisyUI, which is MIT licensed.
  • marked, which is MIT licensed.
  • next.js, which is MIT licensed.
  • react-icons, which has various open-source licenses.
  • react, which is MIT licensed.
  • tauri, which is MIT licensed.

The following fonts are utilized in this software, either bundled within the application or provided through web fonts:

Bitter, Fira Code, Inter, Literata, Merriweather, Noto Sans, Roboto, LXGW WenKai, MiSans, Source Han, WenQuanYi Micro Hei

We would also like to thank the Web Chinese Fonts Plan for offering open-source tools that enable the use of Chinese fonts on the web.


Happy reading with Readest!

Frequently asked questions

Is readest free to use?

readest is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does readest do?

Readest is a modern, feature-rich ebook reader designed for avid readers offering seamless cross-platform access, powerful tools, and an intuitive interface to

What is readest written in?

readest is primarily written in TypeScript. Its source is publicly available at https://github.com/readest/readest, and it has 25,874 GitHub stars.