Zad El Momen is an Islamic application providing everything a Muslim needs to perform worship easily and accurately. It offers the complete Holy Quran with Tafsir, highly accurate daily prayer times based on your geographical location, and a Qibla finder to facilitate prayer anywhere.
The app also features Muslim Azkar, Azan alerts, Al Quran Al-Kareem Radio and customizable settings for calculation methods and school of thought (Mathhab), providing a personalized and comfortable user experience through a simple and smooth interface.
- Complete Quran: Full access to the Holy Quran.
- Tafsir Integration: Detailed interpretation and meanings for better understanding.
- Bookmarks: Mark and save your favorite verses for quick access anytime.
- Smart Search: Quickly find verses by keywords, words, or phrases across the Holy Quran.
- Accurate Prayer Times: High-precision timings based on your specific location.
- Azan Alerts: Stay notified for every prayer with timely alerts.
- Qibla Finder: Easily locate the direction of the Kaaba from anywhere in the world.
- Azkar: A comprehensive collection of morning, evening, and daily supplications.
- Localization Support: Full support for both Arabic and English languages.
- Quran Font Size Control: Easily adjust the Holy Quran text size for comfortable reading.
- Customizable Settings: Adjust calculation methods and schools of thought (Mathhab) to suit your preferences.
- Modern UI: A simple, smooth, and responsive interface built with Jetpack Compose.
- Dark/Light Theme: Support for system-wide theme preferences.
- Offline Support: Access essential features and previously loaded content without an internet connection.
- Supabase Backend: Robust data management and services.
- Firebase Integration: Real-time analytics, crash reporting, and cloud messaging.
- Language: Kotlin
- UI Framework: Jetpack Compose
- Architecture: MVVM + Clean Architecture
- Dependency Injection: Koin
- Backend: Supabase (PostgREST, Realtime, Storage, Functions)
- Local Database: Room + DataStore Preferences
- Networking: Ktor (via Supabase SDK)
- Asynchronous: Kotlin Coroutines & Flow
- Media: Media3 ExoPlayer (audio playback)
- Notifications: Firebase Cloud Messaging (FCM)
- Analytics & Monitoring: Firebase Crashlytics + Performance
- Maps & Location: MapLibre Compose + Google Location Services
- Calendar: Umm al-Qura Calendar
- Billing: Google Play Billing
The app follows Clean Architecture principles with MVVM pattern, organized into layers:
- Presentation: Jetpack Compose UI, ViewModels, and State management.
- Domain: Pure business logic, Use Cases, and Repository interfaces.
- Data: Repository implementations, Remote (Supabase) and Local (Room) data sources, and mappers.
- Design System: Reusable UI components and design tokens.
git clone https://github.com/ElsayedMagdy122/Zad-El-Momen.git
cd Zad-El-MomenCreate a local.properties file in the root directory (if not present) and add your Supabase credentials:
SUPABASE_URL="your_supabase_url"
SUPABASE_KEY="your_supabase_key"
# Support levels (IDs for in-app or tracking)
SUPPORT_1="id_1"
SUPPORT_5="id_5"
SUPPORT_10="id_10"
SUPPORT_25="id_25"
SUPPORT_100="id_100"Add your google-services.json file to the app/ directory.
- Open the project in Android Studio
- Sync the project with Gradle files
- Build the project (Build > Make Project)
- Run on device or emulator (Run > Run 'app')
| Al Quran Al-Kareem Radio | Azkar | Bookmarks | Dark Theme | Full support English language |
|---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
| Holy Quran | Prayer Times | Qibla Finder | Smart Search | Tafsir |
![]() | ![]() | ![]() | ![]() | ![]() |
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/Wird) - Commit your Changes (
git commit -m 'Add wird section') - Push to the Branch (
git push origin feature/Wird) - Open a Pull Request









