AI-Powered Summary and Prompt Creator (2025)
React, TypeScript, Electron, SQLite, Tailwind CSS, Node.JS, ShadCN
- Intelligent text summarization application built with React and TypeScript, packaged as a cross-platform desktop app using Electron. Features a modern UI with Tailwind CSS and Radix UI components for a polished user experience.
- Users can generate high-quality summaries by providing original text content, which can be organized into manageable context blocks for easier processing.
- Includes specialized query templates for initial summarization, comparison analysis, and refinement to achieve 100% content fidelity.
- Provides a side-by-side comparison feature allowing users to evaluate summary quality against original content.
- Supports saving and organizing summaries into custom lists for future reference and continued refinement.
- Implements persistent local storage to preserve user work across sessions, with database integration for more advanced data management capabilities.
A modern, responsive portfolio designed to showcase projects and skills.
An interactive weather application that provides forecasts and maps.
A task management application with drag-and-drop functionality.
Application Tracker (2024)
C++, ImGui, OpenGL, SQLite, Win32 API
- Comprehensive desktop activity monitoring application built with C++ and ImGui, providing a detailed analysis of computer usage patterns. Features a clean graphical interface using OpenGL for rendering and visualization components.
- Users can track active window sessions automatically, with the application recording process names, window titles, and precise timestamps for all computer activity. Idle detection automatically pauses tracking after 5 minutes of inactivity.
- Includes multiple visualization tools like pie charts showing application usage distribution and heat maps displaying hourly activity patterns throughout the day.
- Provides a calendar interface allowing users to navigate through historical data and analyze usage patterns across different time periods.
- Features application categorization capabilities to group similar applications together for better analysis of time spent on different types of activities.
- Implements persistent SQLite database storage to maintain a complete history of computer usage, storing data in an efficient format using Julian day numbers to avoid timezone issues.
- Supports detailed reporting with time-based filtering, allowing users to view statistics for specific date ranges or compare usage patterns across different days.
Assembly Line Simulation (2025)
C++, OpenGL (FreeGLUT/GLU), GLUT
- Real-time 3D factory scene simulation built in C++ using OpenGL's fixed-function pipeline and FreeGLUT for cross-platform windowing and input.
- Configures ambient, diffuse, and specular lighting with depth testing and perspective projection (glFrustum) for an immersive industrial environment.
- Animated conveyor belt with continuous offset, rotating rollers, and looping via modulo arithmetic to simulate an endless production line; belt speed adjustable via keyboard controls.
- Modular rendering of factory components including springs, presses, silos, kilns, packers, and skybox. Each textured with TGA-loaded materials (concrete, metal, brick).
- High-performance particle system for sparks and fire effects: particles follow gravity, bounce on collision, fade on expiry, with proximity-triggered sparks and randomized fire-blaster emissions.
- Real-time shadow projection computed per frame against the ground plane to render semi-transparent silhouettes, simulating shadows without shader code.
- Interactive camera and simulation controls: WASD + arrow keys for movement and look, toggle wireframe mode, and adjust belt parameters on the fly.
UCFK4 Pong (2024)
C, ATMega32u2 (UCFK4), avr-gcc
- Real-time 2-player Pong game for linked ATMega32u2 (UCFK4) microcontrollers, built in C with avr-gcc for the ENCE260 course.
- Features custom IR communication protocol for synchronizing game state between boards, including data encoding/decoding and checksums.
- Implements classic Pong mechanics with Navswitch paddle control, ball physics, scoring up to 10 points, and alternating serves.
- Utilizes UCFK4-specific drivers for interfacing with hardware: IR transceivers, LED matrix display, and Navswitch input.
- Renders ball, paddles, and win/loss status directly onto the 5x7 LED matrix displays.
- Modular design with separate C modules for game logic, ball/paddle mechanics, collision detection, and IR communication.
- Includes a Makefile for streamlined building and deployment using the avr-gcc toolchain on the UCFK4.
Wine Discovery & Management App (2024)
Java, JavaFX
- Explore a large default wine database or import your own via CSV files.
- Search and filter wines easily to find specific bottles or explore options.
- Save personal ratings, reviews, and tasting notes for wines you've tried.
- Organize wines into "Favourites" and "Wishlist" collections for easy tracking.
- Receive personalized wine recommendations based on your viewing history, favourites, and reviews.
- Access all features through a simple sidebar navigation.
Game Review Site Backend (2025)
TypeScript, Node.js, Express
Powers a website for reviewing and managing video games.
- Allows users to sign up, log in, and manage their accounts.
- Lets users browse, search, and filter a catalog of games.
- Supports adding new games, editing existing ones, and removing games from the catalog.
- Manages game categories like genres and platforms.
- Enables users to write and submit reviews (with ratings) for games.
- Shows reviews associated with each game.
- Supports uploading images for games and user profiles.
- Allows users to track games they own or want (wishlist).
- Includes tools for site administrators to manage the data and system.
Max's Game Site (2024)
React, TypeScript, Zustand, Axios, Tailwind CSS, Radix UI
- A modern, feature-rich web application for game enthusiasts to discover, track, and review video games across multiple platforms. Built with React and TypeScript, it offers a responsive and intuitive user interface styled with Tailwind CSS and enhanced with Radix UI components.
- Users can browse an extensive catalog of games with powerful filtering capabilities by genre, platform, price range, and more. The application implements a comprehensive search functionality with multiple sorting options to help users find games that match their specific interests.
- Features a robust user authentication system allowing personalized experiences, including game wishlisting and ownership tracking. Users can maintain their own collection of owned games and create wishlists for future purchases.
- The detailed game pages provide comprehensive information including descriptions, pricing, user ratings, and platform availability. Users can leave their own ratings and written reviews to share their gaming experiences with the community.
- Includes a game creation and management system for authorized users to add new titles to the database, complete with image upload functionality. Game creators can update game details or remove listings as needed.
- Implements a responsive user profile system where users can view and edit their personal information and upload profile images, enhancing the community aspect of the platform.
- Utilizes Zustand for efficient state management across the application, providing a seamless and reactive user experience. All data is persisted through RESTful API calls using Axios, with proper authentication token handling for secure operations.
- The application's architecture follows modern frontend best practices with separate concerns for API interactions, state management, and UI components, making it highly maintainable and extensible.
Treasure Thieves Tower Defense (2024)
Java, JavaFX
Classic tower defense gameplay where players strategically place defensive towers to stop waves of enemies.
- Defend against diverse 'Carts' (enemies) that travel along fixed paths across different game maps.
- Choose from a variety of unique towers, each with different strengths and projectile types.
- Upgrade your towers during the game to enhance their power and effectiveness against tougher foes.
- Manage your resources and earned currency through an in-game inventory system.
- Visit the shop between rounds or during gameplay to purchase new towers and vital upgrades.
- Experience round-based challenges with increasingly difficult waves of enemies.
- Plan your defense during a setup phase before the action begins.
- Features distinct win and loss conditions based on your success in defending the treasure.
Unity Ray Tracer (2024)
C#, HLSL, Unity
A custom ray/path tracing renderer built in Unity, exploring advanced rendering techniques and shader programming.
- Developed a custom ray tracing system from scratch using C# and HLSL shader programming.
- Implemented physically-based rendering techniques including global illumination, reflections, and realistic material properties.
- Created a path tracing algorithm that simulates light bounces for photorealistic rendering results.
- Designed efficient acceleration structures to optimize ray-scene intersection calculations.
- Implemented sampling methods for noise reduction and improved render quality.
- Built a custom material system supporting various surface properties including diffuse, metallic, and emissive materials.
- Integrated the ray tracer with Unity's existing rendering pipeline for hybrid rendering approaches.
- Integrates Accumation Shaders for better rendering
3D Ray Tracer (2023)
C++, OpenGL, CMake
A comprehensive 3D rendering system implementing a ray-tracing algorithm that simulates various physical phenomena and advanced rendering techniques.
- Implemented core ray-tracing features including reflection, refraction, and shadow calculation for realistic 3D scene rendering.
- Developed advanced rendering techniques such as stochastic sampling (soft shadows) and adaptive anti-aliasing for improved visual quality.
- Created complex geometric primitives including tori, cylinders with visible caps, and refractive spheres with accurate mathematical modeling.
- Engineered object-space transformations using 4x4 matrices for translation, scaling, and rotation of scene objects.
- Implemented texture mapping for cylinders using UV coordinate calculations for enhanced visual detail.
- Utilized the Durand-Kerner method to solve quartic equations for accurate ray-torus intersections.
- Optimized performance with bounding box checks and adaptive sampling techniques to reduce computation time.
- Built with C++ and OpenGL, with CMake for cross-platform compatibility between Windows and Linux environments.