Dot Island
An Android 16 overlay for music, calls, and Live Updates.
A personal build for Nothing A069 on Android 16, forked from Animesh Gupta’s SmartIsland under GPLv3.
- Year
- 2026
- Role
- Personal fork, interaction redesign, and Android integration

Overview
Dot Island began as a fork of Animesh Gupta's SmartIsland and became a deliberately small, single-device app for a Nothing A069 running Android 16. One monochrome pill expands into a card for ongoing music, calls, or allowed Android Live Updates; ordinary notifications stay untouched in the system shade. I rebuilt the interaction and visual system around the camera cutout instead of keeping a general-purpose customization studio. The app has no Internet permission and retains the upstream GPLv3 attribution.
Technology
- Kotlin
- Android 16
- Jetpack Compose
- Material 3
- Coroutines
- Hilt
- DataStore
- AccessibilityService
- NotificationListenerService
Built around
- The source policy is narrow: Spotify, calls, and explicitly allowed ongoing Live Updates. Calls take priority, normal alerts stay in Android's shade, and order progress or ETA is never invented from elapsed time.
- Tap opens the source app; hold expands the card. Companion circles switch activities, outside taps collapse, and upward swipes dismiss only the island's representation—not the original notification. Small collapsed windows preserve touch pass-through.
- The accessibility service listens to window-state events without retrieving screen content. Idle animation pauses with lifecycle and power-saving conditions; screen-off pauses the overlay. This is a personal build, not a claim of compatibility with arbitrary phones.
If I kept going
- Correct broadcast sender authentication and dismiss-ownership checks before relying on the publishing API; its current examples are not verified end-to-end.
- Extend real-device regression coverage for Spotify transitions, incoming calls, and Live Updates while keeping the single-device scope explicit.
Project views

