Skip to content

22 projects

Work.

Everything I've built that's worth showing. Filter by stack, or open a case study for the full write-up.

In progress

Currently building.

A small graph of connected agent nodes beside a chat window with its messages blurred outPrivateIn progress
2026Solo

AI Automation

An AI-driven automation project I'm building. More soon.

  • AI
  • Automation
  • LLM Agents
Case study
AI Automation
A pipeline diagram with instructions staggered across IF, ID, EX, MEM and WB stages, a stall bubble after a load, and a forwarding arrow into EXPrivateIn progress
2026Solo

Pipelined Processor Simulator

A cycle-accurate C simulator of a five-stage pipelined LC-2K processor, with data forwarding, load-use stalls and predict-not-taken branching.

  • C
  • Computer Architecture
  • Pipelining
  • Assembly
  • Make
Case study
Pipelined Processor Simulator
The Saf hub connected to its five products — school, pilgrimage, admissions, prayer times and time clockIn progress
2025—2026Software Developer — AI focus, team of 3

Saf

A platform unifying five products for the Muslim community — school management, pilgrimage packages, admissions, prayer times, and staff time clock — serving 200+ users.

  • TypeScript
  • React
  • Supabase
  • PostgreSQL
  • Tailwind CSS
  • +2
Case study
Saf

Completed

Shipped and done.

Code and demos for private projects aren't public. Message me and I'll set you up with a demo or repo access. Get in touch

Embedded & Hardware4

PCBs, FPGAs, microcontrollers, and the code that runs on them.

Public

A 75% keyboard layout with RGB-lit keys, a rotary encoder, an OLED readout and an adjustable actuation gauge
2025—2026PCB designer — solo

75% ISO Hall-Effect Keyboard PCB

A custom STM32 Hall-effect keyboard PCB in KiCad — per-key analog sensing through multiplexers into the ADC, split analog/digital power, USB, SWD, and an OLED header.

  • STM32
  • KiCad
  • PCB Design
  • ADC
  • USB
  • +3
Case study
75% ISO Hall-Effect Keyboard PCB
A carrier wave multiplied by a slower modulator to produce an amplitude-modulated output
2026Firmware and screen logic lead

Low-Level Modulator

An 18-instruction processor written in Verilog on a DE2-115 FPGA, driving a synthesizer written in assembly — built to teach modulation to kids.

  • Verilog
  • Assembly
  • FPGA
  • Digital Logic
  • DSP
Case study
Low-Level Modulator
A driver dashboard with a speed gauge, battery and temperature readouts, fault status and a CAN message stream
2025—2026Software Engineer — firmware and screen logic lead

Racecar Telemetry Dash

A real-time C++ dashboard for MRacing's electric formula car, decoding 1000+ CAN messages/sec on a Raspberry Pi — 100× faster than the Python it replaced.

  • C++
  • C
  • Embedded Systems
  • CAN Bus
  • Raspberry Pi
  • +2
Case study
Racecar Telemetry Dash

Private

State diagram of the normal, standard shutdown and emergency states with their transitionsPrivate
2026Solo

EV Charging Control Module

Safety logic and tooling for an EV charging module — a Simulink state machine, a Python port to test it, and a PySide6 control GUI.

  • Python
  • Simulink
  • PySide6
  • Finite State Machines
Case study
EV Charging Control Module

Systems & C/C++10

Low-level programs where data structures, memory, and speed matter.

Private

A fanned hand of cards with the right and left bowers highlighted and hearts as trumpPrivate
2026Team of 2

Euchre

A full game of Euchre in C++, with rule-following computer players and a human player behind a common interface.

  • C++
  • OOP
  • Polymorphism
  • Unit Testing
Case study
Euchre
LC-2K assembly source beside the 32-bit machine code it assembles toPrivate
2026Solo

LC-2K Assembler

A two-pass assembler in C that turns LC-2K assembly into machine code, with label resolution and error checking.

  • C
  • Assembly
  • Computer Architecture
  • Make
Case study
LC-2K Assembler
Three object files, each with text, data, symbol and relocation sections, merging into one machine code file with the Stack label at the endPrivate
2026Solo

LC-2K Assembler & Linker

A C toolchain that assembles LC-2K source into relocatable object files and links up to six of them into one executable, plus a recursive assembly program that runs on it.

  • C
  • Assembly
  • Computer Architecture
  • Linkers
  • Make
Case study
LC-2K Assembler & Linker
A terminal running a keyword search over log lines, with the matching entries highlighted and pulled into an excerpt listPrivate
2026Solo

Log Manager

A C++ command-line tool that loads a large log file and answers timestamp, category and keyword searches instantly, with an editable excerpt list for the entries that matter.

  • C++
  • STL
  • Hash Maps
  • Binary Search
  • Inverted Index
Case study
Log Manager
Words connected to three topic labels, each with a probability barPrivate
2026Solo

Naive Bayes Post Classifier

A from-scratch Naive Bayes text classifier in C++ that learns to label forum posts by topic from their words.

  • C++
  • Machine Learning
  • Naive Bayes
  • STL
Case study
Naive Bayes Post Classifier
Pixel energy map with a low-energy vertical seam drawn between two bright regionsPrivate
2026Team of 2

Seam-Carving Image Resizer

Content-aware image resizing in C++ that removes the lowest-energy seams, so the important parts of a picture survive the shrink.

  • C++
  • Dynamic Programming
  • Image Processing
  • Unit Testing
Case study
Seam-Carving Image Resizer
Candlestick price chart beside a max-heap with the best bid at the rootPrivate
2026Solo

Stock Market Simulator & Priority Queues

A C++ stock exchange that matches buy and sell orders with priority queues, built on a hand-written library of five priority queue implementations.

  • C++
  • Priority Queues
  • Heaps
  • Templates
Case study
Stock Market Simulator & Priority Queues
Grid map of water and land tiles with a dotted search path ending at a treasure markerPrivate
2026Solo

Treasure Hunt

A C++ grid-search simulator where a captain and first mate hunt for treasure, switchable between stack and queue search at runtime.

  • C++
  • STL
  • Graph Search
  • Make
Case study
Treasure Hunt
Three reviews with weighted keywords highlighted, each scored and labelled truthful, deceptive or unsurePrivate
2025Solo

Fake Review Detector

A keyword-weighted text classifier in C++ that scores reviews and sorts them into truthful, deceptive, or uncategorised.

  • C++
  • NLP
  • File I/O
  • Unit Testing
Case study
Fake Review Detector
Planets joined by a dashed nearest-neighbour route from start to endPrivate
2025Solo

Planet Routes

A C++ route planner that places planets on a grid and plots a mission through them with the nearest-neighbour heuristic.

  • C++
  • Algorithms
  • File I/O
Case study
Planet Routes

Full-Stack Software1

Products with real users, from database to interface.

A gradebook of students with homework, quiz, Hifdh and exam scores, attendance dots and averages
2026Solo build

Darul Uloom Michigan Grading System

The grading management app built for Darul Uloom Michigan — the beta that Saf grew out of.

  • TypeScript
  • React
  • Supabase
  • PostgreSQL
  • Tailwind CSS
  • +1
Case study
Darul Uloom Michigan Grading System

ML & Data4

Classifiers, regression, and numerical analysis on real data.

Private

A smooth mesh surface rising in bell-shaped peaks above scattered measurement points on a map gridPrivate
2026Solo

Alaska Precipitation Regression

Radial basis function regression in Julia that fits a continuous precipitation surface to scattered Alaska weather data, solved with a least-squares pipeline built from scratch.

  • Julia
  • Linear Algebra
  • Machine Learning
  • Regression
  • Jupyter
Case study
Alaska Precipitation Regression
A skewed LIDAR point cloud transformed into an aligned one with coordinate axesPrivate
2026Solo

LIDAR Point Cloud Transforms

Affine transformations in Julia that correct distorted 2D and 3D LIDAR point clouds from the Cassie Blue bipedal robot.

  • Julia
  • Linear Algebra
  • Robotics
  • Jupyter
Case study
LIDAR Point Cloud Transforms
Noisy radiation readings on the left smoothed into coloured threat zones on the rightPrivate
2025Solo

Radiation Heatmap & Tumor Detection

MATLAB image processing that denoises sensor data, paints it onto terrain as a radiation heatmap, and flags tumors in brain scans.

  • MATLAB
  • Image Processing
  • HSV Colour
  • Unit Testing
Case study
Radiation Heatmap & Tumor Detection
An offshore wind turbine in flowing wind lines beside a checklist of five site constraintsPrivate
2025Solo

Wind Farm Site Analysis

MATLAB analysis of global wind, wave and buoy data that tests candidate offshore wind-farm sites against five engineering constraints.

  • MATLAB
  • Data Analysis
  • Data Visualization
  • Unit Testing
Case study
Wind Farm Site Analysis