Bupples
App Store, Google Play · 1.4.6
Shared expenses, receipt review and settle-up plans on a multi-currency ledger.
Flutter, Firebase, Vertex AI · 6,048 tests passing
Case study App Store (opens in a new tab) Google Play (opens in a new tab)
I build and ship real apps. Two are live on the App Store.
All eight are from 2026. I was the only developer on each. Where one is still in progress, its status says how far along.
App Store, Google Play · 1.4.6
Shared expenses, receipt review and settle-up plans on a multi-currency ledger.
Flutter, Firebase, Vertex AI · 6,048 tests passing
Case study App Store (opens in a new tab) Google Play (opens in a new tab)
App Store since Oct 2026
Daily-quote widgets for iPhone and Apple Watch; one rotation rule in Dart, Swift, Kotlin.
Flutter, SwiftUI, Kotlin · 566 tests passing
In development · no live site
Events, registration and tickets for members; meetings, tasks and handover for committees.
Next.js, NestJS, PostgreSQL · 784 API tests
Web app and Windows 1.5.1
A photobooth with 52 effects, reactive masks, custom prints and a virtual camera.
TypeScript, Electron, WebGL2, MediaPipe
Case study Live site (opens in a new tab) Windows release (opens in a new tab)
Web app live · stores next
A shared calendar for crews, with free-time matching and Google Calendar mirroring.
Next.js, Capacitor, Supabase · 50 tests
Private pilot live
Notices when you ship, and drafts résumé and LinkedIn lines from evidence it can cite.
Next.js, PostgreSQL · 529 tests
Prototype live · building
Event discovery and teammate matching for hackathons, CTFs and game jams.
Flutter, Next.js, Supabase
Local CLI · merged 6 Oct
Finds the tests that reach a code change, runs both revisions and signs the evidence.
TypeScript, Node.js, Vitest
Photoshoot 1.5.1 adds reactive masks, custom prints and automatic Windows updates.
Release (opens in a new tab)WayClub’s mobile build adds redesigned events, registration and ticket screens.
Case studyPlanket’s latest build improves onboarding, crews and Google Calendar mirroring.
What changedHACKFAM’s Flutter and web builds now include Discover, with new mobile onboarding.
Case studyCareerOS’s evidence-based career record reached a private pilot.
Case studyTajweed’s redesigned front end went live.
Live site (opens in a new tab)
Redesigned the frontend, learning path, and test harness (598 pass); Hatem Samad built the back end.
Live site (opens in a new tab)
Redesigned a bilingual (English and Arabic, right-to-left) charter site and its three-step booking request flow.
Live site (opens in a new tab)
Manage the club’s LinkedIn: captions, campaigns, posting schedule. Volunteer on marketing videos (filming, editing), event committees and booth duty.
Club on LinkedIn (opens in a new tab) ECX Week certificate (opens in a new tab)
A Godot platformer: I set up Git and built levels, animation and combat.
Play on itch.io (opens in a new tab)| Flutter, Dart | Bupples | Adelante | WayClub | |||
|---|---|---|---|---|---|---|
| Swift, SwiftUI, Kotlin | Bupples | Adelante | ||||
| TypeScript, Node.js | Bupples | Adelante | WayClub | Photoshoot | CodeAtlas | |
| React, Next.js | WayClub | CodeAtlas | Tajweed | |||
| NestJS, PostgreSQL | WayClub | |||||
| Firebase | Bupples | Adelante | WayClub | Photoshoot | ||
| Vertex AI, Gemini | Bupples | |||||
| ML Kit, MediaPipe | Bupples | Photoshoot | ||||
| WebGL2, GLSL, Electron | Photoshoot | |||||
| Playwright, Vitest | WayClub | Photoshoot | CodeAtlas | Tajweed | ||
| GitHub Actions | Bupples | Adelante | WayClub | Photoshoot | CodeAtlas |
Working knowledge Godot, Java, Python
Multimedia University
–
Sunway University × Lancaster University
–
Internship
–
Graduating
I work with Claude Code, Cursor, GitHub Copilot and Gemini.
Bupples Suggested floating-point math for settlements. Enforced integer cents and atomic ledger checks.
Case study: BupplesPhotoshoot Assumed permissions meant the camera rendered. Diagnosed Windows rVFC stalls; added rAF and pixel checks.
Case study: PhotoshootWayClub Proposed optimistic single-row updates. Tested race conditions; locked capacity in PostgreSQL.
Case study: WayClubCodeAtlas Proposed letting generated test selections self-certify. Separated dual-revision runs so proof cannot self-attest.
Case study: CodeAtlas