Jawhar is a modern, privacy-first Quran memorization (Hifz) companion designed to bridge the gap between rote memorization and deep comprehension. Built on the core philosophy that memorization without understanding is incomplete, Jawhar integrates localized translations, tafsir, reasons of revelation (Asbab al-Nuzul), and adaptive daily scheduling into a unified, distraction-free reading experience.
- Methodology-Driven: Automatically structures your day using the traditional Sabaq (new memorization), Sabqi (recent revision), and Manzil (long-term revision) pipeline.
- Adaptive Calibration: The system monitors session completion and recall rates, dynamically calibrating the length and difficulty of upcoming daily goals.
- Pace Projection: Simulates future progress based on historical performance to project completion dates.
- Distraction-Free Reading: A dedicated digital session mode where navigation bars disappear, leaving only the pristine Madani page layout.
- Timer & Repetition Counters: Built-in tools track active focus time and verse repetitions.
- Self-Assessment Overlays: Prompts users to rate their recall after each page, feeding metrics back into the scheduling engine.
- Synchronized Recitation: Gapless audio playback synced to verse-level highlighting (supports 40+ reciters).
- Context-Aware Content: Single-tap access to translations, brief or detailed Tafsir, and historical reasons of revelation (Asbab al-Nuzul) without breaking the reading flow.
- Surah Introductions: Hand-curated structural outlines and key themes for surahs to establish context before reading.
- SRS Flashcards: Six distinct flashcard types powered by the SM-2 Spaced Repetition Algorithm (e.g., Complete the Verse, Identify Surah, Spot the Difference).
- Mutashabihat Practice: A dedicated training module featuring three practice modes to master similar or easily-confused verses across the Quran.
- Weekly Snapshot Analytics: Comprehensive visual reports tracking focus time, review consistency, and retention performance.
- Core Framework: Flutter for cross-platform rendering (Windows, Android, iOS, macOS, Linux, Web).
- Database: SQLite (
sqflite/sqlite3) serving as the offline-first local source of truth. - Cloud Synchronization: Optional Firebase Authentication and Firestore backend supporting fire-and-forget background synchronization.
- Ecosystem Integration: Secure OAuth2 authorization code flow with PKCE to sync bookmarks and reading sessions back to user profiles.
- Audio Engine: Gapless chapter-level MP3 playback using native SChannel/OS media bridges.
Ensure you have the Flutter SDK installed and configured on your system.
- Clone the repository and navigate to the project directory:
git clone https://github.com/khalidouhdane/jawhar.git cd jawhar - Retrieve dependencies:
flutter pub get
- Run the development build (e.g., on Windows desktop):
flutter run -d windows
- Free & Open: Ad-free, tracking-free, and open to the community.
- License: Distributed under the MIT License. See
LICENSEfor details.
We welcome community feedback, bug reports, and contributions. Since the project is in active beta development, feel free to open an issue or pull request to discuss improvements.