Skip to main content
NinjaNext

NinjaNext product

MuslimApp: prayer times and Qibla, private by design

Our own Android app for prayer times, Qibla direction, tasbeeh and zakat, rebuilt in Kotlin and Jetpack Compose. It works offline in English, Urdu and Arabic.

On Google Play

Published on Google Play by NinjaNext Technologies and maintained since 2019. Version 4.0 is a full rewrite.

Owner
NinjaNext product
Period
2019 to 2026
Platforms
Android phone, Android tablet
Key figures
3languages, including right-to-left
0accounts, ads or trackers
MuslimApp feature graphic: daily companion for prayer and remembrance

The problem

Many prayer apps need an account, show ads or send location data to a server. We wanted one that calculates everything on the phone, works without internet and respects the user's language, including right-to-left layouts.

What we built

Version 4.0 is a ground-up rewrite in Kotlin and Jetpack Compose. Prayer times are calculated on the device, reminders use exact alarms that survive restarts and time-zone changes, and the app requests no internet permission at all.

Key features

  • Prayer times calculated on the device, with 10 calculation methods, Hanafi or standard Asr, and high-latitude rules
  • Exact-alarm prayer reminders that are set again after a restart, update or time-zone change
  • Qibla compass corrected to true north, with calibration help and a fallback for phones without a compass
  • Digital tasbeeh with custom dhikr, targets, haptics and a daily total
  • Zakat calculator with gold or silver nisab; figures are never saved
  • Hijri date with a manual adjustment of up to two days
  • English, Urdu and Arabic with full right-to-left layouts, light and dark themes, phone and tablet layouts
  • No accounts, no ads, no analytics and no internet permission

Technology stack

The main technologies used in this project.

  • Kotlin
  • Jetpack Compose
  • Material 3
  • DataStore
  • Coroutines
  • Adhan library
  • GitHub Actions

Our role

Designed, built and published by NinjaNext.

Challenges and how we handled them

  • Accurate times with no server

    All calculations run on the device. Unit tests compare the results against published timetables for different methods and locations.

  • Reminders that do not go missing

    Android can clear scheduled alarms after a restart or update. The app listens for those events and sets every reminder again.

Screens

  • MuslimApp home screen showing the next prayer and today's prayer times
  • MuslimApp prayer times screen
  • MuslimApp Qibla compass screen
  • MuslimApp home screen in Urdu with a right-to-left layout
Store screenshots with demo data.

Let's build it

Planning something similar?

Tell us about your project. If it is close to MuslimApp, we will explain what we would reuse, what we would do differently and what to decide first.