A countdown app with teeth. You set one deadline that matters, and until then it puts itself between you and everything that wastes your time. It installs on your phone as Time Left.
- You pick one deadline, the single thing you are working toward.
- A permanent notification shows how much time is left, every day. As the deadline nears the count drops from days into weeks, so the pressure gets sharper, not softer.
- When you open a time-sink app, an interceptor appears first: "Only 47 days left." You can still continue, but you have to mean it.
- It detects YouTube Shorts and Instagram Reels specifically and blocks those screens, the short-form stuff that quietly eats hours. It can be pointed at any other app too.
- It registers as a device admin so you cannot casually uninstall it and slip out before the deadline. That is the whole point.
The app is only as strong as the permissions it holds, so first launch is a guided setup that walks you through granting each one and explains why:
- Display over other apps so the interceptor can appear on top of anything.
- Accessibility service so it can see when a blocked screen (Shorts, Reels, whatever you chose) comes up.
- Device admin so it cannot be quietly uninstalled before your deadline.
- Autostart and battery exemptions so the countdown survives reboots and does not get killed in the background.
The notification cannot be swiped away, and the app fights the usual escape routes so a moment of weakness does not undo the whole thing.
Hidden settings
Changing or loosening the rules is meant to be hard on purpose. The settings screen is hidden behind five taps in a corner of the screen, a gesture only you know. That friction is deliberate: if it were one tap away you would just turn it off the first time it annoyed you.
flowchart LR
A[You open a blocked app] --> B{Interceptor}
B -->|Continue anyway| D[App opens]
B -->|Back off| E[You close it]
F[Accessibility service] -. watches for .-> G[Shorts / Reels / chosen apps]
G -. triggers .-> B
H[Foreground service] -. keeps alive .-> I[Daily countdown notification]
Download the APK from the Releases page and open it on an Android phone. On first launch it runs the onboarding above.
Native Android and Kotlin. A foreground service runs the always-on countdown, an accessibility service detects blocked screens, device admin protects it from casual uninstalls, and boot receivers bring it back after a restart.
I did not want another habit tracker I could ignore. I wanted something with real teeth, that I could not quietly delete the moment it got annoying. So I built the version that actually holds me to the deadline I set for myself.