Şafak — Quran Reading Tracker
Şafak (Turkish for daybreak) is an Android app for keeping track of your Quran reading.
Role
The idea was my friend Leyla's; building it was my part. I decided how the app works, designed it around her Leylifer concept, built it phase by phase with AI coding agents, added features of my own like the journal and the home-screen widget, and shipped the signed Android release. Leyla reviewed it as it came together, and her feedback went into the details. We worked on this project as a team.
Stack

An Android APK. Since it isn't from the Play Store, Android will ask you to allow installing from an unknown source before it installs.
Overview
Şafak (Turkish for daybreak) is an Android app for keeping track of your Quran reading. The Quran itself isn't in the app. You read from your own printed copy and log what you read, either as a range of pages or as a surah and its ayahs. The Arabic and the translation are tracked separately, each on its own screen with all 114 surahs, and as you get through the pages that screen's background slowly goes from night to dawn. The idea came from my friend Leyla, and the whole design is built on her Leylifer concept (the sun that rises from the night).
What it does
- ILogging what you read by pages or by surah and ayah, picking up where you stopped
- IISeparate screens for the Arabic and the translation, each with all 114 surahs and its own sky
- IIIA daily streak, Istikrar, plus a rest day, Istiraha, earned by reading 20 pages in a day
- IVA journal you write in after translation readings, which turns into a PDF book
- VBadges, a goal with a target date, a home-screen widget, and English and Turkish
Screens










Technical notes
- IThe sunrise follows pages read, not surahs finished. Surahs get much shorter toward the end of the mushaf, so the first 580 or so pages hold only about half of them, and tied to the surah count, half of the dawn was squeezed into the last couple dozen pages.
- IIStreaks, progress and finished khatms are all recalculated from the reading log by unit-tested functions, so fixing a wrong entry fixes everything that depends on it. Badges are the only thing that stays once earned.
- IIII first planned to have an AI service write each journal entry from the user's answers. I dropped it the same day I built it, because the entries didn't sound like the person who wrote the answers, and without it the app needs no server and never goes online.
What I learned
Working as a team, on something that had to fit someone else's wishes, changed how I judged my own work. A screen wasn't finished just because I liked it. It also had to match what my teammate had in mind, so explaining my choices and reworking them after her feedback became part of the job.