PDF layout for card printing - 2025

I made a tool written in C++ designed to create print-ready PDF files from a collection of card images. It arranges the images in a grid on one or more pages, with support for front and back sides, customizable borders, bleed areas, and cutting guide lines. It uses raylib for rendering, clay for the UI and libharu for creating the PDF.

cardapp.png I even made my first release on GitHub. Have a look at the repo

The Rulebook - RAG for board game rules - 2025

I built a Django app that lets users ask questions about board game rules. It uses nomic-embed-text-v1.5 for embeddings, pgvector for similarity search, and a locally hosted LLaMA 3.2 3B model for answers. PDFs are parsed and chunked with NLTK, and new game requests are handled automatically each night via Airflow.

TheRulebook.png

Boardgame data analysis - 2024

I explored the data behind the scoring of boardgames in the hope to find the perfect combination of mechanics and categories. Read about what I’ve found here.

Untitled

Multi-threaded Wave Function Collapse

I’ve tried the WFC algorithm and parallelised it in a new way using multi-threading by checking for conflicts after each worker finished propagating changes. The code is constrained to always generate circle-shaped landmasses like these:

screenshot1
screenshot2
screenshot
output_c

link

Medium post - 2023

Exploring OpenGL + PhysX + PyTorch, all in C++ - my first Medium post 🎆.

I have created a project that uses OpenGL to render a ball simulated with PhysX. The ball is controlled by a reinforcement learning agent trained with PyTorch. Its objective is to navigate a 3D scene created in Blender.

link - repo

Global Game Jam - 2023

Theme: Roots! We made an isometric tower defense game in Unity where you start as a tree and you have to grow a forest around you to protect against the incoming waves of zombie rabbits! You place trees that come with turrets of three different types. There are two different resources that can be used to either grow or upgrade the trees/turrets. The zombies are spawning from increasingly more points until the trees are finally overwhelmed. My part included:

  • smooth camera movement
  • procedurally generated roots
  • scripting the AI waves
  • integrating everything at the end

ezgif-frame-006.jpg

Gameplay ezgif-frame-010.jpg ezgif-frame-019.jpg ezgif-frame-040.jpg ezgif-frame-113.jpg

Learning Rust - 2022

I’ve taken the Hands-On Game Development with Rust course from Educative.io. It helped me learn more about game development rather than rust, but it was a fun side-project. Here’s the dungeon crawler game that came out:

Untitled

Cycling - 2022

WhatsApp Image 2022-07-31 at 8.33.33 PM.jpeg

Last year, I did a “long” 82 km cycling trip and I ended up soaked and could barely feel my butt. This year, I decided to do it better! Here’s my story from a 5.5 km daily commute to a one-day 160km trip in pictures:

51 mins - 13.7 km Untitled 1 294372816
2h 6min (3h with breaks) - 35.4 km Untitled 2 294404919
3h 17min (4h with breaks) - 57 km Untitled 3 293719436
5h (6.5h with breaks) - 95 km Untitled 4 294057293
5h 38 mins (8h with breaks) - 96.9 km (super hilly!) Untitled 5 294306412
8h 7 min (including breaks) - 124 km Untitled 6

I didn’t take any pictures on this one, so here’s one from Google:

Untitled 7
Approx 12h (with breaks) - 141 km. Started in New Port for this one, and as you can tell by the time, it was extremely hilly! Untitled 8

My favourite scenery this challenge!

294292569
First failed attempt at 160km (2 punctures and mud everywhere!). The blue line is my friend rescuing me 🤦. Untitled 9 294036817
The final boss! 11h - 164km. It was a ♾️ long journey but so satisfying! WhatsApp 1 WhatsApp 2

Blender - 2022

View renders
landscape
rug chair
horse
decor
proximity light

Catan – 2022

3D printed and painted my own Catan board game. Personally designed the cards using free online assets.

Brick Ore Sheep Wheat Wood
catan setup

Cave explorer - 2021

Part of the developing team for the RoC-Ex: Robotic Cave Explorer game during the UK Festival of Robotics 2021. Play it here!

Autonomous Car - 2019

Third-year undergraduate project.

car.jpg

Robot Wars - 2018

Awarded second place in a local university competition.

IMG_20170225_161018.jpg