Ahmad HassanFull-Stack AI Engineer
WorkDecisionsStackExperienceContactWriting
Hire me
Ahmad HassanLahore, Pakistan
EmailWhatsAppLinkedInGitHub
© 2026 Ahmad Hassan · Full-Stack AI Engineer in Lahore
Selected workEasyQuranAriaRetrivo VaultLeadForge AIRetailFlowNoteMindFitMind AIThe Copper LarderMindScribeSpendSmartFitTrack
Ahmad Hassan/Work/SpendSmart10 of 11

Real-time Android expense tracker

SpendSmart

Every edit lands on every device before the keyboard closes.

Role
Solo · Android
Focus
Mobile · Product
GitHub repository ↗
00
backend servers
88
dependency lines
77
validated categories
Live
snapshot sync

Overview

A personal-finance tracker for Android with no backend server: the app talks to Cloud Firestore directly over an authenticated channel, so reads are live — and the security rules are the entire authorization layer.

What it does

  • Email/password auth with a splash router — returning users never see a login form
  • Full CRUD with partial-field updates that never clobber a document
  • Live dashboard stats folded from the expense stream, never stored counters
  • Instant client-side search across title and category
  • Designed empty states and guarded deletes throughout

Engineering decisions

01

The database is the security boundary

firestore.rules is a deny-by-default whitelist: schema-validated writes, owner-only reads — a patched APK still can’t read anyone else’s spending.

02

Eight dependencies, every one used

Plain Java 8 on AndroidX and Material 3 — no DI framework and no reactive library.

Stack

Android
Java 8Material 3AndroidX
Backend
Firebase AuthCloud FirestoreSecurity Rules
Tooling
Android CI

Screens

Next projectFitTrack →Gym management, without the spreadsheet.