Skip to content

raiz-toff/CommaApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

130 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Comma

Latest release License: MIT Docs

Earnings tracker for gig workers. Tracks shifts, mileage, expenses, and gives tax estimates. Everything stays on your phone — no account, no cloud unless you want it.

Built for DoorDash, Uber Eats, SkipTheDishes, Instacart, Amazon Flex, and others.

Download for Android · Open the web app · Read the docs

One project, three faces

  • Phone app (this repo) — the native Android/iOS app, with background GPS mileage tracking. Grab the APK from Releases.
  • Web app (web/) — an installable PWA at comma-psi.vercel.app for logging and reviewing from a laptop. Vanilla JS, no server, data stays in your browser.
  • Docs (docs/) — user guides and architecture notes, published at comma-docs.vercel.app via the docs-site/ Nextra app.

Screenshots

Dashboard
Dashboard showing weekly net earnings, shift time, distance driven and hourly rate
Weekly net at a glance — earnings, hours, kilometres, and your real hourly rate.
Shift Details
Shift details with GPS route map, duration, hourly rate and distance
Every tracked shift keeps its GPS route, duration, rate, distance, and tips.
Analytics
Analytics stat cards: gross earnings, net take-home, average rate, tax set-aside
Gross vs. net take-home, burn ratio, active vs. online rate, and tax set-aside.
Platforms & Vehicles
Platform and vehicle switcher with DoorDash selected
Filter everything by platform, and switch between your car, scooter, or e-bike.
Expenses
Expenses screen with monthly total, weekly chart and tax-deductible transactions
Log costs as you go — deductible items are flagged and totalled for tax time.
Goals & Streaks
Driver XP level, day streak ring and weekly challenges
Driver XP, day streaks with shields, and weekly challenges to keep you moving.
Goals
Weekly revenue goal thermometer with monthly and yearly goals
Weekly, monthly, and yearly revenue targets with live progress.
Reports & Export
Monthly report with gross revenue, net earnings, shifts and CSV export actions
Monthly summaries, plus one-tap CSV exports of shifts and expenses.
Vehicles
Vehicle list with a car, scooter and e-bike
Manage your fleet — mileage and costs are tracked per vehicle.

Stack

  • Expo SDK 56 + Expo Router
  • SQLite via Drizzle ORM
  • Zustand + TanStack React Query
  • NativeWind v4

Running locally

npm install
npx expo start

For an Android APK:

./build-android.sh

You need the Android SDK. Set the path in android/local.properties:

sdk.dir=/path/to/android-sdk

Google Drive backup (optional)

Create a Web OAuth client in Google Cloud Console and add your client ID to .env:

GOOGLE_WEB_CLIENT_ID=your-client-id

See .env.example.

Contributing

Fix a bug, open a PR. Keep TypeScript strict — no any. DB queries go through Drizzle, no JS array processing on DB results. Details in CONTRIBUTING.md and the development docs.

License

MIT

About

Resources

License

Contributing

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors