All projects

Fintech / Mobile

Swift — Driver Income & Expense Tracker

Android app for ride-hailing and delivery drivers to log income and expenses and see what they actually earn, on an Express/PostgreSQL ledger backend.

  • React Native
  • Android
  • React.js
  • Express.js
  • PostgreSQL
  • Sequelize ORM
  • REST APIs
Swift — Driver Income & Expense Tracker — cover
Client
Swift
Duration
Sep 2021 — Feb 2022
Category
Fintech / Mobile

Ride-hailing and delivery drivers see gross earnings all day and almost never see net. Swift closes that gap: drivers log income and expenses as they go on an Android app, and the platform turns it into the number that actually matters — take-home after fuel, maintenance and platform commission.

The app is React Native, distributed directly as a build rather than through the store, with a React dashboard for deeper review. The backend runs on Express with PostgreSQL and Sequelize — a relational schema is the right shape for ledger data, where every entry needs to be attributable, correctable and summable across arbitrary periods.

The design constraint was speed of entry. A driver logging a fuel stop has thirty seconds and one hand free, so anything that takes more than a few taps simply does not get recorded, and an incomplete ledger is worthless.

Key features

Few-tap income and expense logging built for one-handed use on the move

Net earnings after fuel, maintenance and platform commission

Daily, weekly and monthly summaries with period-over-period comparison

React dashboard for detailed financial review beyond the phone

Express + PostgreSQL/Sequelize relational ledger with correctable entries

React Native Android build distributed directly to drivers

My role

Full-stack developer across the mobile app, dashboard and backend.

  • Built the React Native app, entry flows and summary screens
  • Designed the PostgreSQL ledger schema and Sequelize models
  • Built the Express REST API for entries, categories and aggregations
  • Built the React dashboard views for period analysis

Challenges & solutions

Every extra tap loses a record. The entry flow was cut down to amount, category and save, with everything else defaulted or inferred, because a tracker that drivers stop using produces no data at all.

Money data has to be correctable, not overwritable. Entries are adjusted through the ledger rather than edited in place, so a driver can fix a mistake without silently changing last month's totals.