Expensease

Splits and tracks shared expenses, then works out the fewest transfers that settle a group. For people who share costs with flatmates, friends or family.

Status
Live
Platforms
iOS, Android, Web
Year
2025
Role
Full-stack engineering and design

In soft launch.

Screens

Expensease on iPhone: a group called Goa Trip with five members, the balance owed to the account holder, and a settle-up list naming who owes what.
Expensease on iPhone: one friend's page, listing every shared expense between the two people and the running balance.
Expensease on iPhone: personal expense tracking, with a monthly total and a list of categorised transactions.
Expensease on iPhone: an insights screen summarising the month's largest expense and how spending splits by category.

The constraint

Splitting money with other people is solved in theory and a mess in practice. Existing finance apps are either full of budgeting features nobody asked for, or they leave you doing the arithmetic yourself: who paid, who owes, and how to settle without ten separate transfers. Expensease started from one line. Adding an expense should take under five seconds, and settling up should take none. Everything else followed from holding that line.

Decisions

Settlement is solved before it reaches the screen
Instead of showing a tangle of who owes whom, group debts are modelled as a directed graph and reduced to the smallest set of payments that clears it. The reduction happens before it is rendered, so the app never asks anyone to do the arithmetic.
One codebase across three platforms
A single React Native codebase on mobile and a React app on the web, against the same API. A group is never blocked because one person is on the wrong platform.
Deliberately boring underneath
JWT auth, stateless API nodes, assets on object storage. A money app earns trust by being dull in all the right places, so the only interesting part of the system is the settlement maths.

What it does

How it is built

Clients
React Native (Expo) on mobile, React on the web
Service
Node.js and Express REST API
Data
MongoDB Atlas
Distribution
AWS EC2 and S3
Stack
React Native · Expo · React · Node.js · Express · MongoDB · AWS