projects

A collection of personal and academic projects showcasing my journey in software development, from web applications to mobile apps and games.


Completed:

Pomodoro Timer: November 2024 - January 2025
Click here to view
  • Technologies: React, JavaScript, CSS, HTML
  • Description: A productivity app that helps users focus using the Pomodoro Technique with customizable work/break intervals
  • Process & Pitfalls: Started with basic timer logic, struggled with state management across components, learned to use useEffect for cleanup. Biggest challenge was preventing memory leaks when timers were cleared.
  • What I learned: State management, timer functionality, responsive design, component lifecycle management
Personal Portfolio Website: September 2025
Click here to view
  • Technologies: React, Vercel, JavaScript, CSS
  • Description: A modern, interactive portfolio website showcasing my projects and skills with smooth transitions and mobile-responsive design
  • Process & Pitfalls: Built with Next.js App Router, struggled with infinite carousel implementation, had issues with curtain animations covering content. Learned to conditionally render transition elements and implement seamless scrolling.
  • What I learned: Next.js framework, responsive design, smooth animations, infinite carousel implementation, performance optimization
Word Guesser: December 2024 - January 2025
Click here to view
  • Technologies: Ruby, Sinatra, HTML, CSS, JavaScript
  • Description: A web-based word guessing game similar to Wordle with customizable difficulty levels and real-time feedback
  • Process & Pitfalls: Started with basic Sinatra routing, struggled with game state management and word validation logic, had issues with session handling. Learned to implement proper game mechanics and user feedback systems with server-side validation.
  • What I learned: Web development with Ruby, game mechanics, session management, user interaction design, deployment on Heroku
To-Do App: April 2025 - May 2025
  • Technologies: React Native, JavaScript, Firebase
  • Description: A mobile task management app with real-time synchronization and user accounts
  • Process & Pitfalls: Started with Expo CLI, struggled with Firebase authentication setup, had issues with real-time data synchronization. Learned to handle async operations and implement proper error handling for network requests.
  • What I learned: Mobile development, database integration, user authentication, real-time data management, CRUD operations
Text Adventure Game: January 2024 - April 2024
  • Technologies: Java, JUnit
  • Description: An interactive text-based adventure game with branching storylines and character progression
  • Process & Pitfalls: Started with simple if-else statements, struggled with complex branching logic, learned to use JSON for story data. Biggest challenge was managing state across different story paths without creating spaghetti code.
  • What I learned: Game logic, file I/O, object-oriented programming, data structure design
GPA Calculator: June 2024 - July 2024
  • Technologies: Java, Swing
  • Description: A desktop application that calculates and tracks academic performance with grade point averages
  • Process & Pitfalls: Started with basic Swing components, struggled with layout management, had issues with decimal precision in calculations. Learned to use BigDecimal for accurate GPA calculations and proper form validation.
  • What I learned: GUI development, mathematical calculations, data validation, event handling
Guide Robot: January 2025 - March 2025
  • Technologies: C++, ROS 2, Python
  • Description: An autonomous robot that provides guided tours using computer vision and path planning
  • Process & Pitfalls: Started with basic ROS 2 nodes, struggled with sensor calibration and coordinate transformations, had issues with path planning algorithms. Learned to debug complex robotic systems and implement robust error handling.
  • What I learned: Robotics programming, sensor integration, navigation algorithms, system integration


Under Construction:

AI Scheduler
  • Technologies: Python, Machine Learning libraries, React
  • Description: An intelligent scheduling system that optimizes time management using artificial intelligence
  • Process & Pitfalls: Started with basic ML models, struggling with data preprocessing and feature engineering, having issues with model accuracy. Learning to implement proper training pipelines and handle edge cases in scheduling algorithms.
  • What I'm learning: AI/ML integration, optimization algorithms, web APIs, data preprocessing
Snake Game
  • Technologies: Python, Pygame
  • Description: A classic Snake game implementation with modern graphics and smooth gameplay
  • Process & Pitfalls: Started with basic Pygame setup, struggling with collision detection and game loop optimization, having issues with score tracking and game state management. Learning to implement proper game architecture and performance optimization.
  • What I'm learning: Game development, collision detection, score systems, performance optimization
Conway's Game of Life (Cellular Automata) August 2025 - Present
  • Technologies: Python, Canvas API
  • Description: Conway's Game of Life simulation with interactive controls and pattern generation. This is a project that I am working on for my senior oral presentation.
  • Process & Pitfalls: Started with basic Canvas drawing, struggling with algorithm optimization for large grids, having issues with pattern generation and user interaction. Learning to implement efficient cellular automata algorithms and interactive controls.
  • What I'm learning: Cellular automata, algorithm visualization, performance optimization, interactive design
Pac-Man Game
  • Technologies: Java, JUnit
  • Description: A recreation of the classic Pac-Man arcade game with modern game mechanics
  • Process & Pitfalls: Started with basic sprite rendering, struggling with AI pathfinding for ghosts, having issues with collision detection and game physics. Learning to implement proper game loops and AI behavior patterns.
  • What I'm learning: Game physics, AI pathfinding, sprite animation, game loop optimization

R J W