dorkhub

Yuedu-reader

Yuedu is a native iOS reader that supports multiple book formats, RSS subscriptions, and user-provided book sources.

CHANG-JUI-LIN
Swift12423 forksMPL-2.0updated 1 day ago
visit the demogit clone https://github.com/CHANG-JUI-LIN/Yuedu-reader.gitCHANG-JUI-LIN/Yuedu-reader

Yuedu

Yuedu

Apple Books-inspired open-source reader for iOS.

简体中文 · 繁體中文 · English

Download on the App Store Join the TestFlight beta Featured in iOS Dev Weekly #751 iOS 18.0+ MPL 2.0 License

Featured in iOS Dev Weekly #751From WebView to CoreText: Building a Native EPUB Reader for iOS.

Yuedu is an open-source reading application focused on a high-quality local and open reading experience. One app for EPUB3, comics, audiobooks, RSS, and open catalogs — rendered natively with CoreText, no WebView.

Features

Formats EPUB3 · TXT · CBZ Comics · Audiobook · PDF (WIP)
Content Local Library · WebDAV · OPDS · RSS · Content Sources
Reading Vertical Writing · Themes · Annotation · Bookmarks
More Reading Statistics · iCloud Sync

Why CoreText, not WebView

Most readers wrap content in a WebView. Yuedu renders every page with CoreText, which gives precise pagination, true CJK vertical writing, frame-accurate text-to-speech sync, and native text selection — at native performance. The full story is in From WebView to CoreText.

Architecture

UI (SwiftUI)
  ↓
Reader (CoreText)
  ↓
Parser (EPUB / TXT / CBZ / RSS / Audio)
  ↓
Storage (Local-first)
  ↓
Sync (WebDAV / iCloud / OPDS)

Build

Requirements: Xcode 16+ · iOS 18.0+ · Swift 6.0

git clone https://github.com/CHANG-JUI-LIN/Yuedu-reader.git
cd Yuedu-reader
open Yuedu-Reader.xcodeproj

Then select a simulator (or your device) and run. Self-built versions need their own signing configuration and bundle identifier. Publicly redistributed forks must use distinct app names, icons, and branding and must not imply official endorsement.

Official App Store build

The source code is open source. The App Store version is the official build maintained, signed, reviewed, distributed, and supported by the project owner. Its purchase price supports ongoing development and release maintenance.

Documentation

User guides

Developer reference

Contributing

Contributions are welcome — see CONTRIBUTING.md for conventions and the PR process.

License

Source code is licensed under the Mozilla Public License 2.0. The Yuedu name, app icon, logo, screenshots, and other brand assets are not licensed under the MPL; see TRADEMARKS.md. Versions released before the license transition remain available under the license that applied when they were published; see LICENSING.md.

more like this

frirss

A modern, self-hosted, customizable web frontend for FreshRSS.

TypeScript51

veille-techno

Skill Claude Code de veille tech francophone. Agrège les flux RSS (Journal du Hacker, Human Coders News…) et produit un…

Python51

VibeSDR

Vibe-coded, but not slop. A mobile-first SDR receiver for iOS, Android & Apple Watch — the live waterfall on your wrist…

C++53

search

search projects, people, and tags