Skip to content

04AndroidKotlin · Jetpack Compose · Firebase · MVVM

AkademskiPratilac

An Android study tracker built from scratch: timer, sign-in and sync working as one foreground service.

No public build or repository linked for this project yet.
17:04FOCUS · FG SERVICEonStartCommandwakelock.acquiretick → stateonDestroyCRED MANAGER · SIGNED IN ✓capture pending
fig. 04 · focus session, foreground-service lifecycle sketch (representation)

A timer that must not die

A study timer that dies when the screen turns off is useless, so the Pomodoro engine lives in a Foreground Service with WakeLock discipline tuned against Android’s doze behavior.

Sign-in goes through the Credential Manager API rather than legacy flows, and session state syncs to Firestore under MVVM.

What makes it technically interesting

  • Pomodoro timer running on a Foreground Service so sessions survive backgrounding
  • WakeLock management to keep focus sessions honest through doze
  • Google Sign-In wired through the Credential Manager API
  • Firestore-backed sync under a strict MVVM split
  • Built from scratch, including the debugging that comes with service lifecycle edge cases
GitHub Get in touch