Projects

Discord Bot List
September 2018
A bot listing site built on Express with Pug rendering engine with OAuth 2 support. Uses an external MongoDB server for persistant storage. Web interface coupled with a discord bot.

Periodic Table
November 2019
A frontend-only site that generates an A-Level periodic table from a JSON file with detailed information on each element.

Nickel
May 2020
An ElectronJS app to encode, decode and auto solve ciphers - supports Caesar Shift, Affine Shift and Vigenere. Analyse properties of the text to identify the cipher or solve manually.

Monopoly
September 2020
A Python program to simulate the board game Monopoly. Can be used to analyse strategies and game play techniques.

Journal App
February 2021
A self-hosted progressive web app for journaling using the Phoenix framework and Elixir. Uses a PostgreSQL database for persistant storage.

Cellular Automaton
June 2021
A 3D cellular automaton based on Conway's game of life that runs in the browser. Uses Three.js for rendering and Vue.js for the frontend.

Dijkstra's Algorithm
August 2021
A Three.js web animation to visualise Dijkstra's algorithm in 3D. The nodes of the graph are connected if they are within a certain distance of each other. Shows the steps of the algorithm and the shortest path between two nodes.

Boo
November 2021
A halloween themed game in a 14 by 10 tile grid where there are enemies and puzzles to pass through. Built with PyGame for the CSS GameJam 2021.

Youtube Wrapped
January 2022
Spotify Wrapped but for YouTube. Tells you how many videos you've watched and how many hours as well as your top channels and tags.

Spillager.live
May 2022
A "networth" calculator for the Minecraft server Hypixel (Skyblock). Uses the Hypixel API to fetch item data, prices and player data. Built on Next.js with a large-scale MongoDB database.

Gesture Genius
February 2023
A web app using Tensorflow.js to detect hand gestures in real time to teach American Sign Language. Uses a custom model trained on a dataset of over 100,000 images and the webcam to detect gestures. Made for BrisHack 2023.

Computer Graphics Coursework
December 2023
A basic rendering engine built with C++. Has rasterised and raytraced rendering with support for textures and lighting. Can load in external object files. Animations use linear transformations and interpolation from keyframes. Uses SDL2 for drawing to the screen.