{"id":26859472,"url":"https://github.com/chrox/readest","last_synced_at":"2025-03-31T01:04:51.765Z","repository":{"id":265894795,"uuid":"871781831","full_name":"readest/readest","owner":"readest","description":"Readest is a modern, feature-rich ebook reader designed for avid readers offering seamless cross-platform access, powerful tools, and an intuitive interface to elevate your reading experience.","archived":false,"fork":false,"pushed_at":"2025-03-27T04:14:38.000Z","size":36397,"stargazers_count":5722,"open_issues_count":62,"forks_count":262,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-03-27T05:01:37.548Z","etag":null,"topics":["android","cross-platform","ebook","ebook-reader","epub","foliate","ios","nextjs","reader","sync","tauri","tauri2","tts"],"latest_commit_sha":null,"homepage":"https://readest.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/readest.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-12T23:16:55.000Z","updated_at":"2025-03-27T04:36:44.000Z","dependencies_parsed_at":"2025-03-27T05:00:48.785Z","dependency_job_id":null,"html_url":"https://github.com/readest/readest","commit_stats":null,"previous_names":["chrox/readest","readest/readest"],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/readest%2Freadest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/readest%2Freadest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/readest%2Freadest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/readest%2Freadest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/readest","download_url":"https://codeload.github.com/readest/readest/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246399793,"owners_count":20770908,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","cross-platform","ebook","ebook-reader","epub","foliate","ios","nextjs","reader","sync","tauri","tauri2","tts"],"created_at":"2025-03-31T01:02:08.100Z","updated_at":"2025-03-31T01:04:51.753Z","avatar_url":"https://github.com/readest.png","language":"TypeScript","readme":"\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://readest.com?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=readme\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://github.com/readest/readest/blob/main/apps/readest-app/src-tauri/icons/icon.png?raw=true\" alt=\"Readest Logo\" width=\"20%\" /\u003e\n  \u003c/a\u003e\n  \u003ch1\u003eReadest\u003c/h1\u003e\n  \u003cbr\u003e\n\n[Readest][link-website] is an open-source ebook reader designed for immersive and deep reading experiences. Built as a modern rewrite of [Foliate](https://github.com/johnfactotum/foliate), it leverages [Next.js 15](https://github.com/vercel/next.js) and [Tauri v2](https://github.com/tauri-apps/tauri) to deliver a smooth, cross-platform experience across macOS, Windows, Linux, Android, iOS, and the Web.\n\n[![Website][badge-website]][link-website]\n[![Web App][badge-web-app]][link-web-readest]\n[![OS][badge-platforms]][link-website]\n\u003cbr\u003e\n[![][badge-hellogithub]][link-hellogithub]\n[![][badge-discord]][link-discord]\n[![AGPL Licence][badge-license]](LICENSE)\n[![Latest release][badge-release]][link-gh-releases]\n[![Last commit][badge-last-commit]][link-gh-commits]\n[![Commits][badge-commit-activity]][link-gh-pulse]\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e •\n  \u003ca href=\"#planned-features\"\u003ePlanned Features\u003c/a\u003e •\n  \u003ca href=\"#screenshots\"\u003eScreenshots\u003c/a\u003e •\n  \u003ca href=\"#downloads\"\u003eDownloads\u003c/a\u003e •\n  \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e •\n  \u003ca href=\"#contributors\"\u003eContributors\u003c/a\u003e •\n  \u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://readest.com\" target=\"_blank\"\u003e\n    \u003cimg src=\"./data/screenshots/landing_all_platforms.png\" alt=\"Readest Banner\" width=\"100%\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n## Features\n\n\u003cdiv align=\"left\"\u003e✅ Implemented\u003c/div\u003e\n\n| **Feature**                             | **Description**                                                                                | **Status** |\n| --------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------- |\n| **Multi-Format Support**                | Support EPUB, MOBI, KF8 (AZW3), FB2, CBZ, TXT, PDF (experimental)                              | ✅         |\n| **Scroll/Page View Modes**              | Switch between scrolling or paginated reading modes.                                           | ✅         |\n| **Full-Text Search**                    | Search across the entire book to find relevant sections.                                       | ✅         |\n| **Annotations and Highlighting**        | Add highlights, bookmarks, and notes to enhance your reading experience.                       | ✅         |\n| **Excerpt Text for Note-Taking**        | Easily excerpt text from books for detailed notes and analysis.                                | ✅         |\n| **Dictionary/Wikipedia Lookup**         | Instantly look up words and terms when reading.                                                | ✅         |\n| **Translate with DeepL**                | Translate selected text instantly using DeepL for accurate translations.                       | ✅         |\n| **[Parallel Read][link-parallel-read]** | Read two books or documents simultaneously in a split-screen view.                             | ✅         |\n| **Customize Font and Layout**           | Adjust font, layout, theme mode, and theme colors for a personalized experience.               | ✅         |\n| **File Association and Open With**      | Quickly open files in Readest in your file browser with one-click.                             | ✅         |\n| **Sync across Platforms**               | Synchronize book files, reading progress, notes, and bookmarks across all supported platforms. | ✅         |\n| **Text-to-Speech (TTS) Support**        | Enable text-to-speech functionality for a more accessible reading experience.                  | ✅         |\n\n## Planned Features\n\n\u003cdiv align=\"left\"\u003e🛠 Building\u003c/div\u003e\n\u003cdiv align=\"left\"\u003e🔄 Planned\u003c/div\u003e\n\n| **Feature**                     | **Description**                                                                            | **Priority** |\n| ------------------------------- | ------------------------------------------------------------------------------------------ | ------------ |\n| **Library Management**          | Organize, sort, and manage your entire ebook library.                                      | 🛠           |\n| **AI-Powered Summarization**    | Generate summaries of books or chapters using AI for quick insights.                       | 🛠           |\n| **Sync with Koreader**          | Synchronize reading progress, notes, and bookmarks with [Koreader][link-koreader] devices. | 🔄           |\n| **Keyboard Navigation**         | Implement vimium-style keybindings for book navigation.                                    | 🔄           |\n| **Support OPDS/Calibre**        | Integrate OPDS/Calibre to access online libraries and catalogs.                            | 🔄           |\n| **Audiobook Support**           | Extend functionality to play and manage audiobooks.                                        | 🔄           |\n| **Handwriting Annotations**     | Add support for handwriting annotations using a pen on compatible devices.                 | 🔄           |\n| **Advanced Reading Stats**      | Track reading time, pages read, and more for detailed insights.                            | 🔄           |\n| **In-Library Full-Text Search** | Search across your entire ebook library to find topics and quotes.                         | 🔄           |\n\nStay tuned for continuous improvements and updates! Contributions and suggestions are always welcome—let's build the ultimate reading experience together. 😊\n\n## Screenshots\n\n![Annotations](./data/screenshots/annotations.png)\n\n![DeepL](./data/screenshots/deepl.png)\n\n![TTS](./data/screenshots/tts_speak_aloud.png)\n\n![Footnote](./data/screenshots/footnote_popover.png)\n\n![Wikipedia](./data/screenshots/wikipedia_vertical.png)\n\n![Themeing Dark Mode](./data/screenshots/theming_dark_mode.png)\n\n---\n\n## Downloads\n\nThe Readest app is available for download! 🥳 🚀\n\n- macOS / iOS / iPadOS : Search for \"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).\n- Windows / Linux / Android: Visit [https://readest.com][link-website] or the [Releases on GitHub][link-gh-releases].\n- Web: Visit [https://web.readest.com][link-web-readest].\n\n## Requirements\n\n- **Node.js** and **pnpm** for Next.js development\n- **Rust** and **Cargo** for Tauri development\n\nFor the best experience to build Readest for yourself, use a recent version of Node.js and Rust. Refer to the [Tauri documentation](https://v2.tauri.app/start/prerequisites/) for details on setting up the development environment prerequisites on different platforms.\n\n```bash\nnvm install v22\nnvm use v22\nnpm install -g pnpm\nrustup update\n```\n\n## Getting Started\n\nTo get started with Readest, follow these steps to clone and build the project.\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/readest/readest.git\ncd readest\ngit submodule update --init --recursive\n```\n\n### 2. Install Dependencies\n\n```bash\n# might need to rerun this when code is updated\npnpm install\n# copy pdfjs-dist to Next.js public directory\npnpm --filter @readest/readest-app setup-pdfjs\n```\n\n### 3. Verify Dependencies Installation\n\nTo confirm that all dependencies are correctly installed, run the following command:\n\n```bash\npnpm tauri info\n```\n\nThis 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.\n\nFor 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`.\n\n### 4. Build for Development\n\n```bash\n# Start development for the Tauri app\npnpm tauri dev\n# or start development for the Web app\npnpm dev-web\n```\n\nFor Android:\n\n```bash\n# Initialize the Android environment (run once)\npnpm tauri android init\n\npnpm tauri android dev\n# or if you want to dev on a real device\npnpm tauri android dev --host\n```\n\nFor iOS:\n\n```bash\n# Set up the iOS environment (run once)\npnpm tauri ios init\n\npnpm tauri ios dev\n# or if you want to dev on a real device\npnpm tauri ios dev --host\n```\n\n### 5. Build for Production\n\n```bash\npnpm tauri build\npnpm tauri android build\npnpm tauri ios build\n```\n\n### 6. Setup dev environment with Nix\n\nIf you have Nix installed, you can leverage flake to enter a development shell\nwith all the necessary dependencies:\n\n```bash\nnix develop ./ops  # enter a dev shell for the web app\nnix develop ./ops#ios # enter a dev shell for the ios app\nnix develop ./ops#android # enter a dev shell for the android app\n```\n\n### 7. More information\n\nPlease check the [wiki][link-gh-wiki] of this project for more information on development.\n\n## Contributors\n\nReadest is open-source, and contributions are welcome! Feel free to open issues, suggest features, or submit pull requests. Please **review our [contributing guidelines](CONTRIBUTING.md) before you start**. We also welcome you to join our [Discord][link-discord] community for either support or contributing guidance.\n\n\u003ca href=\"https://github.com/readest/readest/graphs/contributors\"\u003e\n  \u003cp align=\"left\"\u003e\n    \u003cimg width=\"500\" src=\"https://contrib.rocks/image?repo=readest/readest\" alt=\"A table of avatars from the project's contributors\" /\u003e\n  \u003c/p\u003e\n\u003c/a\u003e\n\n## License\n\nReadest is free software: you can redistribute it and/or modify it under the terms of the [GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.html) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See the [LICENSE](LICENSE) file for details.\n\nThe following libraries and frameworks are used in this software:\n\n- [foliate-js](https://github.com/johnfactotum/foliate-js), which is MIT licensed.\n- [zip.js](https://github.com/gildas-lormeau/zip.js), which is licensed under the BSD-3-Clause license.\n- [fflate](https://github.com/101arrowz/fflate), which is MIT licensed.\n- [PDF.js](https://github.com/mozilla/pdf.js), which is licensed under Apache License 2.0.\n- [next.js](https://github.com/vercel/next.js), which is MIT licensed.\n- [react](https://github.com/facebook/react), which is MIT licensed.\n- [react-icons](https://github.com/react-icons/react-icons), which has various open-source licenses.\n- [tauri](https://github.com/tauri-apps/tauri), which is MIT licensed.\n\nThe following fonts are utilized in this software, either bundled within the application or provided through web fonts:\n\n[Bitter](https://fonts.google.com/?query=Bitter), [Fira Code](https://fonts.google.com/?query=Fira+Code), [Literata](https://fonts.google.com/?query=Literata), [Merriweather](https://fonts.google.com/?query=Merriweather), [Noto Sans](https://fonts.google.com/?query=Noto+Sans), [Roboto](https://fonts.google.com/?query=Roboto), [LXGW WenKai](https://github.com/lxgw/LxgwWenKai), [MiSans](https://hyperos.mi.com/font/en/), [Source Han](https://github.com/adobe-fonts/source-han-sans/), [WenQuanYi Micro Hei](http://wenq.org/wqy2/)\n\n---\n\n\u003cdiv align=\"center\" style=\"color: gray;\"\u003eHappy reading with Readest!\u003c/div\u003e\n\n[badge-website]: https://img.shields.io/badge/website-readest.com-orange\n[badge-web-app]: https://img.shields.io/badge/read%20online-web.readest.com-orange\n[badge-license]: https://img.shields.io/github/license/readest/readest?color=teal\n[badge-release]: https://img.shields.io/github/release/readest/readest?color=green\n[badge-platforms]: https://img.shields.io/badge/platforms-macOS%2C%20Windows%2C%20Linux%2C%20Android%2C%20iOS%2C%20Web%2C%20PWA-green\n[badge-last-commit]: https://img.shields.io/github/last-commit/readest/readest?color=green\n[badge-commit-activity]: https://img.shields.io/github/commit-activity/m/readest/readest\n[badge-discord]: https://img.shields.io/discord/1314226120886976544?color=5865F2\u0026label=discord\u0026labelColor=black\u0026logo=discord\u0026logoColor=white\u0026style=flat-square\n[badge-hellogithub]: https://abroad.hellogithub.com/v1/widgets/recommend.svg?rid=8a5b6ade2aee461a8bd94e59200682a7\u0026claim_uid=eRLUbPOy2qZtDgw\u0026theme=small\n[link-appstore]: https://apps.apple.com/app/apple-store/id6738622779?pt=127463130\u0026ct=github\u0026mt=8\n[link-website]: https://readest.com?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=readme\n[link-web-readest]: https://web.readest.com\n[link-gh-releases]: https://github.com/readest/readest/releases\n[link-gh-commits]: https://github.com/readest/readest/commits/main\n[link-gh-pulse]: https://github.com/readest/readest/pulse\n[link-gh-wiki]: https://github.com/readest/readest/wiki\n[link-discord]: https://discord.gg/gntyVNk3BJ\n[link-parallel-read]: https://readest.com/#parallel-read\n[link-koreader]: https://github.com/koreader/koreader\n[link-hellogithub]: https://hellogithub.com/repository/8a5b6ade2aee461a8bd94e59200682a7\n","funding_links":[],"categories":["Applications"],"sub_categories":["Ebook readers"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrox%2Freadest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrox%2Freadest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrox%2Freadest/lists"}