Zumzu.dev
  • Home
  • Projects
  • 3D Printing
  • Competitions
  • Resume

  • Try some different colours!

Projects

  • > Responsive Gallery

    Android App

    2026

    Android Studio (java)

    A friend of mine wanted a gallery app that let them display art with their entire screen, like a dynamic picture frame while they work, but there werent any good options! So I opted to write them an entirely custom app instead, which reads the currently playing song and attempts to associate the art to specific kinds of music by keeping track of what art is skipped during what songs!

    Most control is done through swipe gestures, and its complete with a swipe-back style history, and import/export to combine data across devices!

    Shrug Shrug
  • > QR Event Manager

    Android App

    2025

    Android Studio (java)

    This was my final assignment for one of my classes at the University of Alberta. It was story boarded in Figma, and built in Android Studio using libraries including Zebra Crossing and OpenStreetMaps! As a team of six, we tracked issues and maintained a wiki in GitHub, complete with CRC cards, Javadoc, and sprint/meeting logs!

    Shrug Shrug
  • > Lunar Lander

    RL Capstone

    2025

    Python

    This project was an optional capstone for a reinforcement learning class! It uses the lunar lander environment from Gymnasium offered by the Farama Foundation, a fork of OpenAIs Gym. The goal was to implement an agent capable of using a limited fuel to reliably land from randomized starting states, while preserving as much fuel as possible. My implementation used expected SARSA, and ended up preforming relatively well!

  • > Balancing Engine

    TTRPG Tool

    2025

    Python

    This is a python based simulation and data analytics tool I used to balance my groups custom gear list for the Cyberpunk 2020 TRPG rule set! It simulates fights between theoretical units in a vacuum to measure a given weapons viability based on its TTK or chance to instantly kill an enemy. It then plots all the weapons in the batch on a nice little graph to make it easy to spot outliers!

    Shrug
  • > Damage Tracker Mk2

    TTRPG Tool

    2025

    Python (WIP)

    Mk2 is a GUI unit tracker that my friend group uses to simplify a lot of the more complicated calculation you need to do when playing our version of Cyberpunk 2020 TRPG. It sees a ton of use and as a result has many polished features to make using the system easier! Its complete with art and animations, and even connects to a database of units our GM can modify before a session!

  • > Temperature Regulator

    Embedded Arduino

    2025

    C++

    When I was building my 3D printer enclosure, I designed it to embed a PC fan and use an Arduino to hold a specified internal temperature. This also comes with the added benefit that I can monitor the internal vs external temperature remotely. I wrote the code myself in C++ using the Arduino IDE! See the 3D Printing page to see it embedded!

    Shrug
  • > Multithreading Library

    C Library

    2024

    C

    For my operating systems course I also built two libraries: a threadpool library using POSIX threads that allows users to create and hand arbitrary jobs off to a threadpool, and a Map Reduce library that lets users effeciently parse large amounts of data from clusered structures! To do so I had to implement multiple primitive syncronization methods, largely sempahors and mutex locks!

    Shrug
  • > Sorting Visualizer

    RISC-V Program

    2024

    RISC-V Assembly

    This is one of the more visual projects Ive done in assembly language, its just a simple insertion sort algorithm written in pure RISC-V assembly that additionally makes draw calls to the University of Albertas GLIR library, which is effectively just a mapping for extremely basic pixel wise rendering via modern terminals!

  • > Inset Calculator

    Web Tool

    2024

    HTML, CSS, and Javascript

    I found the need to calculate some offset side lengths of a triangular tile (which can be pretty unintuitive), and couldnt seem to find a good tool for it online! This left me with no choice but to boot up CAD software, and so I made a point of writing my own webtool! It has a nice little visualizer and proper scaling so it works on smaller devices!

    Shrug
  • > This Website!

    Flask Website

    2024

    Flask + Waitress

    This website was originally written from scratch using Visual Studio Code in raw HTML, CSS and Javascript, and after taking a web course I opted to modernize it, moving it to Flask + Waitress! Its currently running on a headless Alpine Linux installation on a little blue laptop that lives in a drawer. Its quite literally just an Apache server as a proxy for Waitress, connected to a Cloudflare tunnel, I access it with with SSH and havent opened it for almost a year now!

    Shrug
  • > Duo

    Co-op Game

    2023

    Unity C#

    Duo is a longer form puzzle game I made in my free time, its designed as a local coop puzzle game, where each player moves with a seperate set of arrow keys. The premise is that each player has a different ability they gain access to when they pick up a crystal, and they have to work together to reach the portal!

  • > Dragonshell

    Linux Shell

    2023

    C

    For my operating systems course, I built a simple shell program in C akin to bash, which supports running in backgroud, input and output redirection, and piping! The only built in commands are pwd, cd, and exit, but you can run any program using absolute file references!

  • > Damage Tracker

    TTRPG Tool

    2022

    Python

    This is a legacy form of Damage Tracker Mk2. Though it does almost everything that Mk2 can, it uses a CLI and as such the more complicated features are pretty clunky. It has since been entirely abandoned as we reworked the way damage is applied, and a lot of the ammotypes now read slightly differently.

    Shrug
  • > Grappler

    Game Jam

    2022

    Unity C#

    This is yet another 48h game jam game I did solo, my goal was to create a satisfying grappling platformer that could be expanded for speed running (similar to On The Grid). I wrote all the grappling physics myself, learning a lot about the power of ray casting in the process!

  • > On The Grid

    Game Jam

    2020

    Unity C#

    On The Grid is from a 48h game jam, the premise of the jam was limited resources, and we ended up building a game where your jumps are limited, and must be collected! At its core, it is a physics based platformer with some minor puzzle elements that requires some pretty tight movement at times. Its complete with menus, music, some tricky collectables, and a brutally difficult bonus level!

  • > Frozen Deep

    Game Jam

    2019

    Unity C#

    This is a Unity C# game for a 48h game jam I did with a friend, complete with menus, music, and an end sequence! The premise is that you are trying to navigate a deep and dark ocean for treasure. You can collect coins and bring them back up to the surface to buy powers like longer air supply, faster movement, or more light!

    Shrug
  • > FPS Playground

    Online FPS

    2018

    Processing (java)

    This was my attempt at a 3D online multiplayer shooter, written entirely from scratch other than a relatively simple library called QuesyCam which handles camera rotation. Networking was done using a secondary server program and the built-in processing.net library!

  • > Snake AI

    RL Demo

    2018

    Processing (java)

    While I was in high school, I built a super simple machine learning algorithm to play snake, all without any external libraries!

    (before it was cool too!)

  • > GeoFire

    Roguelike

    2018

    Processing (java)

    GeoFire is a procedurally generated card based dungeon crawler built in Processing! The main gimmick is that your health, move speed, and Mana (the card playing resource) were all tied together. It led to some really weird balance that couldn't be fixed without reworking that primary mechanic, but it taught me a lot about the value of class based architecture!

LinkedIn GitHub Music
Email

********@ualberta.ca

I couldnt find a template I liked so this website was written from scratch using Flask in raw HTML, CSS and Javascript! Hosted on my own hardware running Alpine Linux with the help of Cloudflare!

© 2026