The most comprehensive open-source Sahih Al-Bukhari mobile application
Read, search, bookmark, and learn from the complete Sahih Al-Bukhari collection — beautifully crafted with Flutter.
Al-Buckary is a feature-rich mobile application that brings the complete Sahih Al-Bukhari hadith collection to your fingertips. Built with Flutter for cross-platform support, it provides a clean, modern reading experience with powerful features designed to help users study, memorize, and engage with the hadiths.
Whether you're a student of knowledge, a researcher, or someone looking to incorporate hadith reading into your daily routine — Al-Buckary is built for you.
All hadiths from Sahih Al-Bukhari organized across 97 chapters (أبواب), searchable and accessible offline.
Lightning-fast full-text search powered by SQLite FTS5 with Arabic diacritics normalization for accurate results.
- Favorites: Mark hadiths you love for quick access
- Custom Collections: Organize hadiths into themed groups with color-coded labels
Attach personal notes to any hadith with color-coded categories — your private study companion.
Bookmark your reading position in each chapter and pick up exactly where you left off.
Share hadiths as beautifully formatted images or plain text — perfect for social media and messaging apps.
Track your reading journey with a calendar heatmap, streak tracking, session time, and weekly activity charts.
Receive a random hadith notification daily to keep you connected with the Sunnah.
- Dark & Light modes with customizable primary color
- Multiple Arabic fonts: Cairo, Tajawal, Changa, Playpen Sans Arabic, Aref Ruqaa
- Adjustable font size for comfortable reading
Built with Flutter — runs natively on Android, iOS, Windows, macOS, and Linux.
lib/
├── main.dart # App entry point & providers setup
├── splash.dart # Animated splash screen
├── database_helper.dart # SQLite database with FTS5, migrations, self-healing
├── hadith_data.dart # Pre-loaded hadith data (97 chapters)
│
├── models/ # Data models
│ ├── hadith.dart # Hadith model (id, text, chapterId, isFavorite)
│ ├── chaper.dart # Chapter model (id, title, hadithCount)
│ ├── collection.dart # Collection model
│ └── note.dart # Note model
│
├── pages/ # App screens
│ ├── home_page.dart # Chapters list with search
│ ├── hadith_list_page.dart # Hadiths in a chapter with search & filtering
│ ├── hadith_page.dart # Individual hadith view with actions
│ ├── favorite.dart # Favorites page
│ ├── collections_page.dart # Custom collections management
│ ├── notes_page.dart # All notes view
│ ├── statistics_page.dart # Reading stats & calendar
│ ├── settings.dart # App settings & customization
│ └── about_page.dart # About the app
│
├── components/ # Reusable UI components
│ ├── hadith_card.dart # Hadith display card with actions
│ ├── custom_appbar.dart # Custom app bar with search
│ ├── bottom_navigation_bar.dart
│ ├── smart_share_dialog.dart
│ ├── notes_sheet.dart
│ └── ...
│
├── providers/ # State management (Provider)
│ ├── favorit_provider.dart # Favorites state
│ ├── bookmarks_provider.dart # Bookmark state
│ ├── statistics_provider.dart # Reading statistics
│ └── usage_tracker.dart # Session time tracking
│
├── services/ # Background services
│ ├── notification_service.dart # Daily hadith notifications
│ └── ad_service.dart # Google Mobile Ads
│
└── themes/ # Theming
├── theme_provider.dart # Dynamic theme management
├── light_mode.dart
└── dark_mode.dart
| Category | Technology |
|---|---|
| Framework | Flutter 3.8.1 |
| Language | Dart 3.8 |
| State Management | Provider |
| Database | SQLite (sqflite) with FTS5 full-text search |
| Local Storage | SharedPreferences |
| Notifications | flutter_local_notifications + WorkManager |
| Ads | Google Mobile Ads |
| Sharing | share_plus + screenshot |
| Fonts | Cairo, Tajawal, Changa, Playpen Sans Arabic, Aref Ruqaa |
- Flutter SDK (3.8.1 or later)
- Android Studio or VS Code
- An Android/iOS emulator or physical device
# Clone the repository
git clone https://github.com/soghayarmahmoud/Al-Buckary.git
# Navigate to the project directory
cd Al-Buckary
# Install dependencies
flutter pub get
# Run the app
flutter run# Android APK
flutter build apk --release
# Android App Bundle (for Play Store)
flutter build appbundle --release
# iOS (requires macOS)
flutter build ios --releaseWe have an exciting roadmap planned across 4 milestones. Check out our GitHub Issues for the full list!
- Bookmark icon on hadith cards with scroll-to-bookmark
- Save and restore home page scroll position
- Hadith explanation (Sharh) with expandable UI
- Chapter quiz system with scoring
- Companions biographies screen (سيرة الصحابة)
- Spaced repetition for hadith memorization
- Daily learning goals with streak enhancement
- Professional charts (pie, bar, line) with fl_chart
- Chapter completion certificates
- Achievement badges system
- Firebase Authentication (Email, Google, Apple)
- Cloud sync for user progress (Firestore)
- User profile & community leaderboard
- Offline-first with background sync queue
We welcome contributions from developers of all skill levels! Many of our issues are labeled good first issue and help wanted — perfect for beginners.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
We follow Conventional Commits:
| Prefix | Usage |
|---|---|
feat: |
New feature |
fix: |
Bug fix |
docs: |
Documentation changes |
style: |
Formatting, no code change |
refactor: |
Code restructuring |
test: |
Adding tests |
chore: |
Tooling, dependencies |
- The app uses Provider for state management — check
lib/providers/for patterns - Database schema is in
lib/database_helper.dartwith self-healing migrations - Hadith data is pre-loaded from
lib/hadith_data.dart - All Arabic text should use
TextDirection.rtl
This project is licensed under the MIT License — see the LICENSE file for details.
For inquiries, suggestions, or collaborations:
Email: alsighiar@gmail.com
GitHub: @soghayarmahmoud
⭐ Star this repo if you find it useful!
بارك الله فيكم — May Allah bless your efforts in spreading knowledge.











