Projects

Overview

These are some of the projects that I have worked on in the past. Some of these are personal projects, while others were done for classes or internships.

While the home page has a recent and relevant project showcase, this is a comprehensive collection of my projects.

Each project has it's own page as well that goes into more depth about it's purpose, what I learned, as well as personal challenges and experiences.

Current Projects

Future Projects

Comprehensive List

Software Development

Game Development

Web Development

Bots

Systems Programming

Utilities

Software Development

UnitED Caclulator

Calculator that performs calculations across different unit types.

  • Followed an agile (Scrum) process to create a complete software product
  • Worked with a team of 5 using Git and GitHub
  • Utilized software design principles and worked to maximize cohesion and minimize coupling
  • Worked with a stakeholder to refine requirements

Navigation Application

Navigation Application with real-time updates, map matching, and route relocation

  • Used object-oriented principles to model geographic shapes, street segments, and intersections
  • Applied design patterns such as the Observer, Model-View-Controller, and Strategy
  • Developed interactive visualizations using Java Swing and Java 2D graphics
  • Utilized pathfinding algorithms (Djikstra's and Bellman Ford) and GPS data parsing for dynamic routing
  • Developed map matching and route relocation features to adjust routes based on real-time data

Game Development

Godot Playground

Playground focused on the development on modular and scalable Godot systems.

  • Utilized state machines to implement advanced systems
  • Took advantage of development patterns such as the Component pattern, Observer, Strategy, and Singleton
  • Learned more about Linear Algebra, game physics, animations, and user input handling

Web Development

Portfolio Website Link

Website that was created to showcase my projects and skills.

  • Created a sleek and modern design focused on simplicity
  • Created a responsive design

Pantry Panic Website Link

Website that provides you recipes based on the ingredients available.

  • Worked with a partner using Git
  • Created a responsive design
  • Leveraged API calls to display data

Bots

LeetCode Discord Bot Link

Discord bot that facilitates active LeetCoding and contest participation.

  • Designed, implemented, and used a Database using SQLite for efficient storage and quick lookups.
  • Used the LeetCode API to get related information
  • Utilized software design patterns such as the Observer pattern to manage events and notifications
  • Self-hosted the bot 24/7 on a Raspberry Pi

Systems Programming

Duke Shell

Unix-style shell with custom utilities, piping, and environment variable management.

  • Built interactive + batch shell modes using fork(), exec*(), and dup2()
  • Created custom versions of ls, chmod, head, cat, env, and more
  • Implemented piping, variable parsing, and command chaining
  • Wrote scripts to test shell behavior and validate output

DHCP Client & Server

Simulates DHCP client behavior with custom BOOTP packet encoding, option parsing, and raw UDP communication.

  • Built full DHCP discovery process using raw socket programming and UDP messaging
  • Parsed and constructed BOOTP packets with custom struct handling and byte-level manipulation
  • Implemented option field parsing for key DHCP fields (subnet mask, router, lease time, etc.)
  • Simulated client-server interaction for IP address negotiation and configuration

Utilities

Mad Zip File Compression Utility

Custom file compression utility using Huffman Coding, comparable to 7-Zip and gzip.

TXTMET Utility

Command line utility to provide certain metrics of a TXT file.

  • Used getopt to implement command line functionality
  • Implemented appropriate error handling based on input