Projects


Website screenshot

trolleyman.org (Remix)

2025

Rewrite of the original website using React Router v7 (formerly Remix).
Languages: TypeScript, CSS, HTML
Libraries: React Router, Vite, Tailwind CSS
Tools: Vercel
Breakout game screenshot

Dissertation

2018-19

Final year project exploring Google DeepMind's research into developing general AI for Atari 2600 games using deep learning. Achieved a 1st class mark for this project.
Languages: Python
Libraries: TensorFlow, PyTorch
Website screenshot

trolleyman.org

2018

Created a website to keep track of the projects I've been working on. This was my first website, built with Rust and Rocket.
Languages: Rust, WASM, JavaScript, CSS, SQL
Libraries: Rocket
LINC logo

LINC

Jun. 2017

A versatile social network visualization tool, developed with Millennium Point.
Languages: HTML, JavaScript, CSS, SQL, Python
Libraries: Three.js, D3.js, Django
Flappy game logo

Flappy Clone

Dec. 2016 - Jul. 2017

Yet another Flappy Bird clone.
Languages: HTML, JavaScript, CSS, SQL, Python
Libraries: HTML5 Canvas API, Django
Zucchini game logo

Zucchini

Jul. 2017

Atmospheric fast-paced top down shooter. Developed with 5 other students.
Languages: Java
Libraries: LWJGL, OpenGL, OpenAL
Robot warehouse system

Robot Warehouse

Apr. 2016

Robot warehouse management system. Developed with 9 other students.
Languages: Java
Libraries: LeJOS, Swing
Portal 2 game screenshot

Portal 2

Nov. 2016

A redo of my first Portal project, a shameless attempt to copy my favourite video game at the time, Portal. Guess that makes this a redo of a r edo.
Languages: Rust
Libraries: OpenGL
K-means clustering visualization

k-means

Sep. 2016

Using the k-means algorithm to create pretty pictures.
Languages: Rust
Equator expression editor

Equator

Dec. 2016

An expression editor and evaluator that allows easy visualization and processing of mathematical expressions.
Languages: Rust
Libraries: GTK+