← Back to work

IN DEV

WealthLens

Cross-platform personal finance app for Taiwan's salaried workers. Task-driven, not another expense tracker.

Context

A personal side project: an iOS + Android personal-finance app for salaried workers, built solo.

Problem

Most finance apps are expense trackers that shame you with what you owe. The goal was the opposite: reach financial goals by completing tasks, framed as accumulation, not countdown.

Constraints

Cross-platform from one codebase. Domain logic (a money-allocation engine) must be provably correct and unit-tested. Honest but never judgmental; no push notifications.

Approach

Flutter with a strict separation between pure-Dart domain logic and UI. A pure-function allocation engine with financial invariants encoded as tests. A locked design system (contour-line hero, semantic color, tabular figures) documented and applied consistently across screens.

Outcome

Android build passing with 125 tests green; iOS verification in progress. Design system and product philosophy fully specified.

Stack

Flutter · Dart · Riverpod · Drift (SQLite) · local_auth