Abdalla Bakr
Home

Projects

Solo work, team projects, and the things I'm building right now.

Game Jam: Lead Developer

Live

Led a 5-person team in a month-long competitive jam. Finished 17th of 100+ entries; game shipped on itch.io.

Unity C# Git

Islamic Services Marketplace

In progress

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.

Next.js 15 TypeScript Drizzle ORM Neon Postgres Stripe Tailwind

PromptForge

Live

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.

Next.js TypeScript FastAPI Python Supabase pgvector

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.

Python FastAPI SQLite HTMX Jinja Playwright

College Management Platform

In progress

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.

React Node.js PostgreSQL Playwright

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.

C# .NET / WinForms MySQL BCrypt

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.

Python Flask SQLite Bootstrap 5 LLM API (optional)

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.

React TypeScript Vite Zustand PartyKit Vitest