Back
Side project · Shipped

24Spent.

A homescreen widget that keeps my UPI spending in view — one number, always there, no app to open.

Role
Designed & built
Type
Personal side project
Platform
Android · homescreen widget
Stack
Claude · Cursor · Android Studio
24Spent widget on the Android homescreen
On the homescreen
The itch

I never really knew what I’d spent.

I lose track of my spending — especially on weekends or while travelling. Opening a UPI app to check adds friction, and honestly, a little anxiety.

So I mostly didn’t check. The result: low visibility into my spending, and almost no awareness in the moment it actually mattered.

The fix

Put the number where I’d already look.

I designed and built a lightweight Android homescreen widget that passively tracks and shows spending across flexible timeframes — without opening a single app.

It lives on the homescreen next to the weather. One glance, and I know.

Design Considerations

Five rules I held it to.

01

Zero friction

No app to open, nothing to log. It just sits there and stays current.

02

Ambient awareness

The number is always visible — never hidden behind an intent to check.

03

Emotional reduction

Checking becomes passive, so the anxiety of “how much did I spend?” quietly goes away.

04

User control

Flexible timeframes, so the number always matches the context I’m in.

05

Radical simplicity

One number with just enough context. No charts, no dashboards, no clutter.

How it works

SMS in, a live number out.

No bank integrations, no permissions theatre — just the transaction texts your phone already receives.

01 · Read

Reads UPI SMS in real time

Listens to incoming transaction messages as they arrive on the device.

02 · Filter

Keeps only the debits that matter

Parses each message and filters down to the relevant debit transactions.

03 · Aggregate

Totals spend for the timeframe

Sums the filtered transactions for whichever window you’ve selected.

04 · Show

Updates live on the homescreen

The total is continuously refreshed and shown directly on the widget — no app in the loop.

Demo
Designed and shipped almost entirely by prompting. Claude and Cursor wrote most of the Kotlin; I directed the product, the parsing logic, and the design — then verified builds in Android Studio on a real device.
Building 24Spent in Cursor
Cursor
Cursor screenshot
img/24spent-cursor.jpg
Building 24Spent in Android Studio
Android Studio
Android Studio screenshot
img/24spent-android.jpg
Outcome

Mindful spending, with zero effort.

The widget creates a continuous, low-key awareness that naturally shifts how I spend — mindful, without effort or stress.

After I shared it, a few friends started using it day-to-day. That told me the problem — and the fix — resonate well beyond just me.

I wanted to push the visuals further, but ran out of Cursor credits midway — so this version leans more functional than polished. It still does exactly what it’s for.

Try it on your own homescreen.

When installing the APK, enable installation from unknown sources and temporarily turn off Play Protect. You can revert both settings once the install is complete.