2026In progress
Ruhsat: Car Maintenance & Fuel
- React Native
- Expo
- TypeScript
- SQLite
- Drizzle ORM
- Supabase
- PostgreSQL
- SwiftUI
- AdMob
- StoreKit
- EAS Build
Overview
A fuel, service and expense log for car owners. It measures consumption correctly from full tank to full tank and sends a notification when inspection, insurance, road tax or service is due. It works without an account; signing in with email syncs the entries between phones.
01 · Problem
Low-rated reviews of car tracking apps in Türkiye keep pointing at the same problems: forced accounts and broken sign-in, entries lost when switching phones, export locked behind a paywall, fixed car lists, and consumption averages that ignore LPG and partial fill-ups.
02 · Solution
I built the app offline-first: entries are written to SQLite on the phone first and synced to Supabase if the user creates an account. I verified with RLS rules, and with tests that fail when a rule is deliberately broken, that each user can only reach their own rows. Sign-in has no password, just a 6-digit code sent by email. I wrote and tested the full-tank-to-full-tank consumption module, with LPG measured separately, and Türkiye’s inspection, insurance and road tax rules in plain TypeScript, and added the home screen widget in SwiftUI.
03 · Outcome
The result is a car log with no locked features that also works without an account: consumption and expense charts, CSV export that opens in Excel with Turkish characters intact, an icon and widget that follow light and dark mode, and a Turkish and English interface. The single banner ad can be removed with a one-time purchase.