A collection of coding projects that I have worked on in my free time and during my studies at the University of Washington.
Annoying Goose Browser Extension
- Developed a browser extension using JavaScript and the Chrome Extension API
- Explored how subtle interactions can create memorable user experiences
- Iteratively fixed bugs and added features to the extension based on user feedback
- Achieved over 7,000 weekly active users
JavaScriptChrome Extension API
Bird Identifier App
- Developed a full-stack Android mobile app for bird identification using audio recognition, combining machine learning with a passion for ornithology
- Engineered backend using Firebase, including real-time database and authentication systems
- Transformed raw, unstructured bird audio into suitable data for training and deploying a TensorFlow CNN model
VueViteCapacitorJavaScriptNode.jsFirebaseHTMLCSSPythonTensorFlow
Dungeon Adventure Game
- Led a team of two in iteratively developing a dungeon adventure game in an Agile manner with user stories
- Utilized multiple design patterns such as MVC, Singleton, Memento, Builder, Factory, and Mock Object
- Experienced the SDLC by writing an SRS document, designing UML diagrams, implementing the designs in sprints, and deploying the game as an installable application
JavaSQLJavaFX
Neural Network from Scratch
- Built neural network implementation from first principles in Python to gain deep understanding of ML fundamentals underlying modern frameworks like TensorFlow and PyTorch
- Implemented forward propagation with configurable node architectures, weight matrices, and bias vectors for flexible network design
- Developed backpropagation algorithm using multivariable calculus to compute gradient vectors, optimizing for efficient training convergence
PythonPandasNumpySciKitLearnMatPlotLib
Platformer Web Game
- Collaborated with a team of three to develop a 2D platformer game with action/adventure elements using vanilla JavaScript.
- Implemented physics, advanced player movement, slingshot mechanics, collectable items, and particle effects.
- Designed completely custom music and artwork with teammates.
HTMLCSSJavaScript
Discord Story Bot
- Developed a Discord bot that facilitates collaborative storytelling using Python and discord.py
- Integrated Gemini API to generate AI-assisted plot twists and story summaries
- Implemented cloud-based persistence with Firebase Firestore to maintain story continuity
- Designed a system for story export and sharing via Google Docs API
PythonDiscord APIFirebaseGoogle Docs APIGemini API
Procedural Terrain Generation Tool
- Custom implemented the Wave Function Collapse Algorithm, which follows local constraints to collapse cells into tiles, borrowing concepts from Quantum Mechanics and Information Theory.
- Designed a web interface to visualize the algorithm in action and generate custom images.
- Conducted performance analysis on different implementations of the algorithm using Python, improving the efficiency and effectiveness of the terrain generation.
- The professor who oversaw the project stated my new twists on the implementation were likely novel ideas for terrain generation.
JavaScriptHTMLCSSPythonMatplotlib