Projects
Solo work, team projects, and the things I'm building right now.
Game Jam: Lead Developer
Led a 5-person team in a month-long competitive jam. Finished 17th of 100+ entries; game shipped on itch.io.
Islamic Services Marketplace
A multi-service marketplace connecting clients with vetted practitioners for Hijama, Ruqya, Quran tutoring, and more. Built for a group launching a UK-based platform.
PromptForge
A retrieval-grounded recommendation engine that turns a project brief into a paste-ready spec for Claude Code, Cursor, Codex, Windsurf, Copilot, ChatGPT, Antigravity, Replit, or any AI coding tool. Every pick traces to a verifiable source; the engine proposes candidates and defers locked decisions to the runtime AI plus the user. Live at promptforge.uk.
jobhunt
A local-first job board I built because the early-career listings I actually wanted were scattered across a dozen sites and buried under senior roles. It pulls software and entry-level jobs from a couple of hundred boards and APIs into one searchable SQLite database that runs entirely on my own machine, no account and no server.
College Management Platform
A platform that a UK college runs day to day, built by the team at my internship. I worked on the attendance side and then ran a structured bug hunt across the whole product. The code and the client are confidential, so this is the public-level picture.
Ticket Booking System
A role-based desktop ticket-booking app I built solo in C# / .NET on top of MySQL, set up so the form code never reaches the database directly and adding a new role doesn't ripple through the codebase.
Personal Finance Tracker
A self-hosted finance tracker built as a university group project. My piece was the natural-language assistant that turns plain questions into safe filters over your own data, so the model never sees raw rows.
Catan Duel
A browser table for a two-player card game I play with a friend. Both players see one shared board with sounds and a soundtrack, the app does the maths, dice and shuffling, and nothing enforces the rules: the players decide, exactly like the cards in front of them.