Yomu is a premium, all-in-one reading companion designed for book lovers and audiobook enthusiasts. Whether you're diving into an EPUB, studying a PDF, or listening on the go, Yomu tracks your progress and gamifies your reading journey to help you reach your goals.
- Multi-Format Support: Seamlessly read EPUB and PDF files with a smooth, optimized interface.
- Audiobook Integration: Enjoy your favorite audiobooks with built-in playback controls.
- Smart Loading: Efficiently handle large files with intelligent caching and background rendering.
- Progress Monitoring: Track exactly how many pages and minutes you've read.
- Time-Based Accuracy: Advanced logic differentiates between active reading and skimming.
- Goal Setting: Set weekly reading goals (by pages) to stay consistent.
- Ranks & Levels: Progress from Kohai to Tatsujin based on both your Level (XP) and Achievements.
- Dynamic Achievement Ranking: Your achieved badges are automatically moved to the top of your collection for quick viewing.
- Level-Up Celebrations: Visually stunning rewards and celebrations when you hit new milestones.
- Activity Visualizations: Beautiful charts and insights into your reading habits.
| Rank | Level Required | Achievements Required |
|---|---|---|
| Kohai (後輩) | 1 | 0 |
| Yomite (読み手) | 5 | 2 |
| Senpai (先輩) | 10 | 5 |
| Chousha (著者) | 20 | 8 |
| Sensei (先生) | 40 | 10 |
| Tatsujin (達人) | 50 | 12 |
- Shelf Organization: Keep your collection tidy with customizable shelves.
- Duplicate Prevention: Automatic content-based hashing ensures your library stays unique.
- History Preservation: Choose to keep your reading stats even if you remove a book.
- Framework: Flutter
- State Management: Riverpod
- Database: SQLite
- E-Book Rendering:
epub_view,pdfrx - Audio Playback:
just_audio - Animations:
flutter_animate,animations
lib/
├── components/ # Reusable UI widgets (cards, charts, etc.)
├── core/ # App themes, constants, and utilities
├── models/ # Data models (Book, History, Goal)
├── providers/ # Riverpod providers for state management
├── screens/ # Feature-specific screens (Library, Reader, Dashboard)
└── services/ # Database and file system services
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Tip
Priority Contribution: We are actively looking for a robust Text Highlighting feature for both EPUB and PDF readers. If you're looking for a way to make a big impact, this is it!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.