Projects
Experimental projects
These are projects I have worked on in my free time, often to learn about new technologies or concepts. They are not necessarily production-ready, or even designed to be used by others, but they were fundamental in my learning process.
Animated Voxel Loader
A set of tools to export animated 3D models from Blender and load them into Minecraft to automate the creation of stop-motion animations.
C++ Ray Tracer
A GPU-accelerated path tracing engine written in C++ using the OpenGL API, capable of rendering complex scenes with physically-based materials and lighting, with built-in temporal denoising, anti-aliasing, and HDRI lighting support.
Ray Marching
My journey into ray marching, a technique for rendering complex 3D scenes using signed distance functions (SDFs). Or, how a script I wrote on my calculator to pass time in class kickstarted my passion for graphics programming.
OpenGL Portals
A simple demo showcasing the Portal effect from the popular video game series, implemented in C++ using OpenGL.
Live services
These are projects I consider production-ready, currently available for public use.
Matrix Playground
A web-based linear algebra calculator that lets users perform various operations on 2D matrices. Designed to be easy to use, ideal for students and educators.
Pathgrind
A redirection resolution service running a given URL in a headless browser and returning the final URL after all redirects.
Qstrip
A fast Markdown stripping library for Python with a C backend.
CU Records Booking Platform
Self-serve web platform for Columbia students used to book timeslots at the CU Records studio.
School projects
Projects I've completed as part of my Computer Science degree at Columbia University.
Biped Walking Robot
A self-balancing 3D-printed biped walking robot, controlled by a Raspberry Pi.
Neural Texture Enhancement
A research project exploring the use of generative adversarial networks (GANs) for generating high-fidelity textures from low-resolution images, completed as my final project for Columbia's Neural Rendering course.