A beautiful and feature-rich Islamic mobile application built with Flutter, featuring Al-Quran, Hadith, Qibla direction, Prayer times, and more.
- Complete Quran with 114 Surahs
- Arabic text with Bangla translation
- Offline reading (cached data)
- Last reading bookmark
- Beautiful Arabic typography (Amiri font)
- Smooth scrolling and readable UI
- Multiple Hadith collections (Bukhari, Muslim, Abu Dawud, etc.)
- Bangla Hadith text
- Offline access after first load
- Category-wise browsing
- Real-time compass-based Qibla finder
- Accurate direction using device sensors
- Visual indicator for correct alignment
- Location-based calculation
- Automatic prayer time calculation
- Customizable prayer alarms
- Local notifications
- Works even when app is closed
- Dark mode support
- Customizable font sizes
- Clean architecture
- Offline-first approach
- Beautiful Material 3 UI
- Flutter SDK (3.0.0 or higher)
- Dart SDK (2.17.0 or higher)
- Android Studio or VS Code with Flutter extensions
- Android device or emulator (API 21+)
- Clone or extract the project:
cd islamic_app- Install dependencies:
flutter pub get- Generate Hive adapters (if needed):
flutter packages pub run build_runner build- Run the app:
flutter runThe app requires the following permissions which are already added in the AndroidManifest.xml:
- Internet permission (for API calls)
- Location permission (for Qibla and Prayer times)
- Notification permission (for Prayer alarms)
- Wake lock permission (for alarms)
The app uses the following public APIs:
- Quran API: https://api.alquran.cloud/v1
- Prayer Times: Calculated locally based on user location
No API keys are required as we're using public endpoints.
lib/
├── main.dart # App entry point
├── app/
│ ├── core/
│ │ └── theme/
│ │ └── app_theme.dart # Theme configuration
│ ├── data/
│ │ └── models/ # Data models
│ │ ├── quran_model.dart
│ │ ├── hadith_model.dart
│ │ └── prayer_model.dart
│ ├── modules/ # Feature modules
│ │ ├── home/
│ │ ├── quran/
│ │ ├── hadith/
│ │ ├── qibla/
│ │ ├── prayer/
│ │ └── settings/
│ ├── routes/ # App navigation
│ │ ├── app_pages.dart
│ │ └── app_routes.dart
│ └── services/ # Core services
│ ├── api_service.dart
│ ├── storage_service.dart
│ └── notification_service.dart
- Framework: Flutter 3.x
- State Management: GetX
- Local Storage: Hive + SharedPreferences
- Networking: Dio
- UI Components: Material 3
- Fonts: Google Fonts, Amiri (Arabic)
- Sensors: Flutter Compass, Geolocator
- Notifications: Flutter Local Notifications
dependencies:
get: ^4.6.6 # State management
hive: ^2.2.3 # Local database
hive_flutter: ^1.1.0
dio: ^5.4.0 # HTTP client
flutter_compass: ^0.7.0 # Compass sensor
geolocator: ^10.1.0 # Location
flutter_local_notifications: ^16.3.0 # Notifications
google_fonts: ^6.1.0 # Typography
flutter_screenutil: ^5.9.0 # Responsive UI- On first launch, the app will download Quran data from the API
- This may take 2-3 minutes depending on your internet connection
- After download, all data is cached locally for offline use
- You'll see a progress indicator during download
- Location: Required for Qibla direction and Prayer times
- Notifications: Required for Prayer alarms
- Grant these permissions when prompted
- After initial data download, the app works fully offline
- Qibla and Prayer times require location (uses cached location if available)
- All Quran and Hadith data is available offline
flutter clean
flutter pub get
flutter runflutter packages pub run build_runner build --delete-conflicting-outputs- Check AndroidManifest.xml has all required permissions
- On Android 12+, ensure notification permission is granted
- Enable location services on your device
- Grant location permission to the app
- Ensure GPS is enabled
To build a release APK:
flutter build apk --releaseThe APK will be located at: build/app/outputs/flutter-apk/app-release.apk
To build an app bundle (for Play Store):
flutter build appbundle --release- Tafsir (Quran commentary)
- Audio recitation
- Quran search functionality
- Prayer tracking/statistics
- Islamic calendar
- Dhikr counter
- Multiple language support
- Widget support
This project is created for educational purposes. Please ensure you have rights to use any APIs or content.
This is a demonstration project. Feel free to use it as a template for your own Islamic app!
- Quran data from: AlQuran Cloud API
- Hadith data: Mock data (in production, use a real Hadith API)
- Icons: Material Design Icons
- Fonts: Google Fonts, Amiri Font
For issues or questions:
- Check the Troubleshooting section
- Ensure all dependencies are installed
- Verify Flutter and Dart versions
Built with ❤️ for the Muslim community
- Flutter SDK ইনস্টল করুন
- প্রজেক্ট ফোল্ডারে যান
flutter pub getচালানflutter runদিয়ে অ্যাপ চালান
- প্রথমবার অ্যাপ খোলার সময় কুরআন ডাটা ডাউনলোড হবে
- ইন্টারনেট সংযোগ প্রয়োজন
- ডাউনলোডের পর সম্পূর্ণ অফলাইনে ব্যবহার করা যাবে
- অবস্থান অনুমতি (কিবলা ও নামাজের সময়ের জন্য)
- নোটিফিকেশন অনুমতি (নামাজের অ্যালার্মের জন্য)
আল্লাহ আপনাদের সাথে থাকুন! 🤲