Projects

PrairieLearn Productivity Enhancer
Problem
PrairieLearn users struggled to keep track of assignment deadlines across multiple courses, leading to missed tasks and last‑minute cramming.
Solution
Developed a Chrome extension in TypeScript that overlays upcoming deadlines and task summaries directly within the PrairieLearn interface. Powered by a Python backend that parses course data and schedules notifications. Iteratively refined the UI based on feedback from over 30 student testers.
Impact
Helped over 100 users reduce academic stress and improved task tracking during exam periods by 35%.

Weather Forecast Scheduler
Problem
Students lacked a simple way to plan around local weather conditions when managing class schedules.
Solution
Built a responsive web app that integrates the National Weather Service (NWS) API with personal course schedules, featuring interactive maps with live weather overlays and dynamic condition‑based alerts
Impact
Reduced API requests by 40% through intelligent caching, improved on‑time class attendance by 15% for pilot users (n=60), and earned a 4.7/5 satisfaction rating in demo sessions.

Zombie Zork: Distributed Text Adventure Game
Problem
Traditional text-based adventure games are constrained by monolithic architectures, limiting scalability, user collaboration, and real-time responsiveness. There's a gap in the market for a distributed, multiplayer-first system that enables dynamic environments, persistent game state, and modular world expansion.
Solution
Designed and implemented a scalable, zombie-themed text adventure game using a hub-and-spoke distributed architecture. Key features include central hub server coordinating multiple domain servers, asynchronous communication using aiohttp for responsive gameplay, RESTful API endpoints enabling seamless player movement, dynamic item system, and persistent state management.
Impact
Reduced server load by 60% through efficient inter-node caching, enabled real-time multi-user gameplay across distributed domains, achieved 100% item tracking accuracy, and built a modular system supporting future expansion.