Apps I have shipped,
running on real devices.
Screens captured from working builds — a ride-hailing platform live on both app stores, a camera-based draft-survey reader doing OCR on a ship hull, and a telemedicine app that matches patients to their nearest clinic. Not mockups.
Personal data in these captures has been replaced with demo values.
A two-sided ride-hailing platform
Jhelord Taxi Connect pairs a rider app and a driver app against one backend. Riders geocode a pickup, widen a search radius until a car is in range, and book; drivers hold a live map, take one job at a time, and carry a verified profile. Built and shipped end to end, from schema to store submission.
- Reverse-geocoded pickup with an adjustable search radius and nearest-driver matching.
- Driver-side live map plus a booking queue that enforces one active job at a time.
- Driver identity carries licence details and a rider-facing star rating.
- Real-time geolocation, token-based auth, and push notifications under latency-sensitive load.
- React Native
- Expo
- Express.js
- PostgreSQL
- Google Maps API
- Push

Rider and driver builds side by side on real handsets — pickup search on the left, dispatch queue on the right.

Driver profile — licence on file, rating, and unit management.
Reading a ship’s draft through the camera
Draft survey normally means a person leaning over the side with a notebook. This reads the hull instead: point the camera at the painted draft marks and it finds the waterline, OCRs the numerals around it, and resolves the reading in metres — continuously, as the swell moves the line.
- Detects the waterline and locks a measurement rule across the frame.
- OCRs painted draft numerals and counts how many marks it resolved, frame by frame.
- Grades every reading LOW, MED, or HIGH so a weak result is visibly weak rather than silently wrong.
- Holds up across hull conditions — white-on-orange and dark-on-grey, wet and dry.
- Live camera
- OCR
- Mobile
- TypeScript
Live scan — detection, lock-on, and the LOW / MED / HIGH confidence band.

A single reading, with the raw OCR string kept on screen.
Matching patients to the nearest clinic
WhatsAppDoc is a telemedicine app built around one job: get a patient to the closest clinic that can actually see them. Accounts, sign-up, and password recovery sit in front of a location-matched consultation flow.
- Clinic proximity matching over the Google Maps API — patient location in, nearest available clinic out.
- Email and password accounts with sign-up and password recovery.
- React Native client against an Express and PostgreSQL backend.
- React Native
- Express.js
- PostgreSQL
- Google Maps API

Sign-in — the entry point to the consult flow.
Want one of these walked through end to end, or something like it built?