Prayer times app with auto-updating widgets. Works worldwide.
Free, no ads.
- All 7 prayer times including Imsak and Syuruk
- Swipe to see tomorrow's prayer times
- Qibla compass
- Home screen widgets (multiple styles, dark mode)
- Automatic zone detection via GPS
- Official prayer time data for supported countries
- Client-side calculation fallback for unsupported regions
- Works offline after initial setup
See Architecture for details on how the app works internally.
When the app detects your GPS location, it determines your prayer zone using a country-first approach:
- Country detection — Bundled Natural Earth ADM0 geojson → country ISO code
- Official zone lookup — For supported countries (driven by countries.yaml), geojson + mapping files are fetched from CDN and cached locally. Point-in-polygon lookup resolves the exact zone.
- Calculated fallback — For unsupported countries, prayer times are calculated locally using adhan-js with region-appropriate methods.
Supported countries are managed in the simplesolat-data repo. Adding a new country requires no app update.
For countries without official data sources, prayer times are calculated client-side using adhan-js. See simplesolat-data README for the full method table.
All calculations use Shafi madhab for Asr timing. Imsak is derived as Fajr minus 10 minutes.
npm install
npx expo start- Prayer times (official): simplesolat-data — aggregates from JAKIM, MUIS, Kemenag, KHEU, ACJU, and more
- Prayer times (worldwide): adhan-js (client-side calculation)
- Zone boundaries: geoBoundaries (CC-BY 4.0)
- Country boundaries: Natural Earth (public domain)