Skip to main content

Projects

ergo

Oct 2024 - present

Ergo is a Typst suite of customizable environments for notetaking and homework assignments, designed for students in math, CS and physics. Written in collaboration with my friend, it now has 40+ stars on Github and is being used for a French PhD thesis.

Collaboration with Jesse Cobb

Typst Python

dotfiles

Nov 2024 - present

These are my personal dotfiles, which I work on quite regularly. My tiling window manager config, neovim config, and nix home manager config all live here, for both Linux and MacOS. This is also home to the config for my custom lily58 keyboard.

Zsh Lua Nix

simple-research-poster

Apr - Dec 2025

simple-research-poster is a simple Typst template for university research posters. Based on the code from our group's custom poster template during the Directed Reading Program, it allows users to easily create high quality research posters with Typst.

Collaboration with Jesse Cobb

Typst

courses_graph

Jan - Nov 2023

courses_graph is a Vue site representing all courses at UCSB as a dependency DAG, after scraping all available data from school websites and its API. We dynamically displayed course data using a constrained optimization library and d3, with Quasar components. This project won 3rd place at the 2023 Coders SB Project Showcase, earning us $250.

Collaboration with Ashwin Anand

Vue Typescript d3 beautifulsoup Python

Mini Cyber Reasoning System

Nov - Dec 2025

This is a minimal implementation of a cyber reasoning system, a program capable of autonomously identifying and patching bugs in C libraries (as seen at the DARPA Grand Challenge at DEFCON 2025). Using static analysis tools and LLMs, we were able to fuzz and patch implanted bugs in the exiftools library. This was our final project for the graduate computer security course at UCSB, CMPSC 279.

Collaboration with Jacob Fingerman and Sandy Zhou

litellm angr

rustcaster

Apr - Sep 2023

This is a recreation of a raycaster I wrote in 2019, one of my earliest projects. Despite the name, only the Python implementation is complete.

pygame

Tank Maze

Jan 2026

Tank Maze is a P2P multiplayer turn-based programming game written in Rust. It was largely written during SB Hacks 2026.

Collaboration with Jesse Cobb, Karthik Bhattaram and Leo Zhu

Rust ggez tokio iroh

Proof Wiki Visualization

Jan 2025

This is a graph based visualization of Proof Wiki, largely based on my earlier work on courses_graph. It was built during SB Hacks 2025.

Collaboration with Jesse Cobb and Shane Tobin

Svelte Latex beautifulsoup d3

linalgeuc

Apr - Aug 2020

Linalgeuc is a 3D engine for various shapes including cubes, cylinders, and planes that was built using a custom linear algebra library. It does not claim to follow best practices or be optimized in any way. Rather, linalgeuc is intended to be a fun project to learn about the implementation of linear algebra and 3D graphics programming, while trying to rederive as much as possible on my own.

Python pygame

vamos

Jan - May 2025

vamos is a website that provides transcriptions of uploaded audio files. It was built as part of the 2024-25 Project Series at the Data Science Club at UCSB. The frontend was written in Svelte and the backend was written in Flask.

Collaboration with Alicia Qu, Dustin Fisher, Guia Llovido, Kyle Doan and Kelvin Fang

Svelte Flask Tailwind

simple-blockchain

Nov - Dec 2025

Simple blockchain is a minimal blockchain implementation for recording transactions between arbitrarily many nodes, using the Paxos consensus protocol. This was our final project for the undergraduate distributed systems course at UCSB, CMSPC 171.

Collaboration with Jonas Chen

Python async/await

platjam

Oct 2024

This is a platformer game written during the Fall 2024 UCSB Game Jam, concerning a cookie trying to escape rising milk.

Collaboration with Julian Springer and Rushabh Taneja

pygame

physics_engine

Jan - Apr 2020

physics_engine is a 2D physics engine and editor featuring simulations at multiple scales. This is the first project where I truly understood OOP.

pygame

skittle_sorter

Sep - Dec 2021

An arduino project leveraging K-means clustering and computer vision to identify the color of skittles and sort them into the right boxes. Created as part of the Cañada College Engineering Club.

Collaboration with Luke Fanguna

Python scipy numpy arduino c++

OldFrameRobot

Feb - May 2022

A controller for a VEX robot, featuring autonomous routines. Created as part of the Cañada College Engineering Club.

Collaboration with Said Gonzalez Lopez

vex c++

pyrrhos

Feb - Apr 2021

This was a simple website I created as a reference for the custom campaign setting my DND group invented. The automatic linking and HTML generation was my first introduction to complicated regex.

HTML CSS beautifulsoup d3

run

Jul 2021

Python clone of the popular game 'run' on coolmathgames.com.

pygame

squirrel-run

Aug 2020

A 2D sidescroller featuring a squirrel, created as part of a 24 hour game jam

Collaboration with Xander Annau

pygame

wikitools

Dec 2020 - Jan 2021

A collection of scripts for updating and maintaining list-class Wikipedia articles.

pandas geopandas matplotlib

MilitaryUpgrade

Oct - Nov 2019

Mod for Factorio 0.17, adding more military functionality. Created as part of the Mid-Peninsula High School Coding Club.

Collaboration with Heath Myers and Nicolas Neal

lua