Skip to content

Android · Attention and focus · Native Android app

6 Months Left

A deadline-based focus app for Android that puts a countdown in the way of chosen time-sink apps and adds deliberate friction before changing its rules.

6 MONTHS LEFT arcade cover: a creator focuses at a desk beside an hourglass, calendar and focus shield.
Conceptual project artwork, generated for this portfolio.

Put a chosen deadline next to the habit that consumes the time

6 Months Left turns one important deadline into a persistent countdown. When someone opens a selected app, the interceptor appears before the distraction and asks them to remember the time remaining. They can continue, but the moment requires an intentional choice rather than an automatic swipe into another video.

The app specifically supports the Shorts and Reels screens described in its README, and can be configured for other apps. It is a focus tool that adds friction, not a productivity score that claims to know whether a person used their time well.

The Android permissions are part of the product contract

The implementation uses a foreground service for the countdown, an accessibility service to observe the active screen, a display-over-other-apps permission for the interceptor, boot handling to resume after a restart, and device-admin behavior to discourage a casual uninstall before the chosen date.

That power comes with responsibility. Onboarding explains the permissions, but a user should still read what each permission allows, understand how to change or remove it, and install the app only on their own device. The system APIs can also behave differently across Android versions and manufacturers.

Friction should support agency, not take it away

The interceptor allows a person to proceed, preserving a way to reach something genuinely necessary. The hidden settings gesture makes changing a commitment less impulsive, but friction should not become an excuse to trap someone in software they no longer want.

This is an experiment in designing around the moment a habit begins. Its success should be judged by whether users feel more able to follow their own goal, not by how many permissions the app can hold or how difficult it is to uninstall.

INSPECT THE IMPLEMENTATION

Read the code and project notes

The details above describe the public repository and project status as reviewed for this portfolio. Follow the source to inspect the implementation, setup instructions and current limitations.

Android services and permission flow
KotlinAndroid Accessibility ServiceForeground ServiceDevice Admin