Projects

Projects

Games, simulations, robotics work, and side builds.

Connect Four on FPGA thumbnail

Connect Four on FPGA

Cyclone V DE1-SoC build with a custom VGA controller, PS/2 keyboard input, and FSM-driven gameplay.

  • Designed a VGA controller with double buffering and 24-bit color via lookup tables
  • Integrated PS/2 keyboard input for seamless play
  • Implemented 8+ finite state machines to coordinate logic and rendering
PT

Polygon Triangulation Visualizer

Interactive Unity tool that lets users paint polygons and watch ear-clipping triangulation play out in real time.

  • Renders each step with procedural meshes, line renderers, and shader-driven highlights
  • UI controls support stepping, pausing, and comparing strategies for teaching and debugging
PS

Planetary Simulator

GPU-accelerated solar system viewer built with Rust and wgpu, with interactive camera and data-driven bodies.

  • Config-driven ECS loads JSON astronomy data, rescales it, and spawns selectable bodies with highlights
  • Multi-threaded n-body integrator (Rayon) with adjustable time scaling and hundreds of physics substeps
  • Procedural sphere meshes, orbit camera, and axis gizmo controls for exploration
Lung Cancer & COVID-19 Detection thumbnail

Lung Cancer & COVID-19 Detection

Deep learning classifier for chest X-rays detecting COVID-19 and cancer using transfer learning and large-scale preprocessing.

  • Achieved 96.5% cancer accuracy, 87% COVID-19 accuracy, and 90.1% overall testing accuracy
  • Preprocessed 100k+ medical images; VGG16 transfer learning cut training time by 60% and improved accuracy by 8%
  • 91% precision and 90% recall; confusion-matrix debugging boosted COVID-19 class accuracy from 82% to 87%
  • Authored 10+ pages documenting architecture, tuning, preprocessing, metrics, and debugging for reproducibility
3D Tic-Tac-Toe on FPGA thumbnail

3D Tic-Tac-Toe on FPGA

Interactive 3D tic-tac-toe built for Cyclone V DE1-SoC with real-time rendering and hardware input.

  • Engineered a real-time 3D renderer with VGA output and hardware input handling
  • Designed interrupt-driven PS/2 mouse input for gameplay control
Google Maps Clone thumbnail

Google Maps Clone

C++/GTK-4 mapping interface featuring shortest paths and custom rendering.

  • Implemented Dijkstra’s algorithm for efficient routing with tuned STL containers
  • Developed an interactive GTK UI with custom graphics rendering
SC

Speed Crave

Top-down Java/Greenfoot driving arcade game with modular scenes (intro, car select, gameplay, end) and AI traffic.

  • Orchestrated full game loop with Scene/Intro/CarSelect/Game/End classes for clean OOP flow
  • Built AI traffic that lane-switches with collision checks, lane boundaries, speed tuning, and GTA-mode aggression toggles
  • Implemented fuel pickups, oil hazards, score + fuel HUD, and accelerating difficulty over time
  • Persisted highscores and difficulty via file I/O (data.txt) to keep progress between sessions
  • Produced layered backgrounds, HUD, and input handling for a consistent 700x900 viewport
Dummy Royale thumbnail

Dummy Royale

Python/PyGame battle royale that drops the player in with 99 AI opponents, crate looting, and weapon pickups.

  • State-machine bots handle crate pathfinding, chasing, and reacting when shot at
  • Range-aware targeting changes tactics based on the equipped weapon
Chess++ thumbnail

Chess++

Java/JavaFX chess app with pass-and-play, online matches through Firebase, and a minimax-based AI.

  • Account system stores player stats and point changes for wins, losses, or early exits
Perspective Shift thumbnail

Perspective Shift

Unity game built around swapping between a 3D world and 2D plane to reach the finish platform.

Conservation of Momentum thumbnail

Conservation of Momentum

JavaFX simulation for 2D conservation of momentum where users set mass, speed, direction, and collision angle to see outcomes.

Insertion Sort Visualizer thumbnail

Insertion Sort Visualizer

Sorting visualizer that animates insertion sort with color cues, step-through mode, instant sorting, reset, and controls for speed and entity count.

Infiltrator thumbnail

Infiltrator

Endless p5.js parkour runner where the player is a ninja traversing procedurally placed platforms.

Dunkirk — 5409 Robotics thumbnail

Dunkirk — 5409 Robotics

Programming sub-team work for the FRC robot, covering the elevator subsystem and drivetrain auto-alignment.

  • PID elevator presets with encoder reset via magnetic limit switch; climb mode locks the ratchet using pneumatics
  • Auto-align rotates toward the hangar using a gyro, averages ToF readings, and drives to the target distance with PID control
CO2 Powered Car thumbnail

CO2 Powered Car

F1 in Schools compliant CO2-powered car design with plans for an Arduino-driven servo release.