A clean, modern Quran Android app built with Jetpack Compose. Displays all 114 Surahs with Arabic text, Urdu (Kanzul Iman) and English (Asad) translations fetched in parallel from the Al Quran Cloud API.
- 📋 Surah List — Browse all 114 Surahs with Arabic name, English name and translation
- 🔍 Search — Search Surahs by name in real time
- 📖 Ayah Reader — Read any Surah with Arabic, Urdu and English displayed per ayah
- ⚡ Parallel API Fetching — Arabic, Urdu and English translations fetched simultaneously using Kotlin coroutines
- 🕌 Tasmiyah Card — Bismillah displayed separately before each Surah
- 🕐 Last Read — Remembers the last Surah you opened
- 🌟 Popular Surahs — Quick access to commonly read Surahs
| Technology | Purpose |
|---|---|
| Kotlin | Primary language |
| Jetpack Compose | UI |
| Retrofit 2 + Gson | API calls & JSON parsing |
| Kotlin Coroutines + async/await | Parallel API fetching |
| StateFlow + ViewModel | State management |
| Al Quran Cloud API | Quran data source |
Uses Al Quran Cloud API — free, no key required.
| Endpoint | Purpose |
|---|---|
/v1/surah |
All 114 Surahs |
/v1/surah/{number} |
Arabic ayahs |
/v1/surah/{number}/ur.kanzuliman |
Urdu translation |
/v1/surah/{number}/en.asad |
English translation |
com.example.noor
├── data
│ └── api
│ ├── QuranApi.kt # Retrofit API interface
│ ├── RetrofitInstance.kt # Retrofit singleton
│ └── Models.kt # Data classes (Surah, Ayah, CombinedAyah)
├── viewmodel
│ └── SurahViewModel.kt # StateFlow + API logic
└── ui
└── screen
├── MainAyahScreen.kt # Home screen with search & popular surahs
├── SurahListScreen.kt # 114 Surahs list
└── AyahScreen.kt # Ayah reader screen
- Clone the repo
git clone https://github.com/yourusername/noor.git-
Open in Android Studio
-
Run on emulator or real device (minimum SDK 24)
No API key needed — works out of the box.
| Screen | Description |
|---|---|
| Home | Motivation ayah, search bar, last read, popular surahs |
| Surah List | All 114 Surahs with Arabic & English names |
| Ayah Reader | Full Surah with Arabic, Urdu & English per ayah |
- Scheherazade New — Arabic Quranic text
- Noto Nastaliq Urdu — Urdu Nastaliq translation
- Al Quran Cloud for the free Quran API
- Kanzul Iman translation by Imam Ahmed Raza Khan
- Muhammad Asad English translation
وَرَتِّلِ ٱلْقُرْءَانَ تَرْتِيلًا — And recite the Quran with measured recitation. (73:4)