PROJECTS

Things I've built, from school projects to apps people use. Click a project for details and photos.

Sprout
Senior Project · In Progress

Sprout

Mobile Finance Tracker

Sprout is a personal finance and money managing app dedicated to helping the user track finances, manage their budget, and understand their financial standing.

React NativePythonSQLitePlaid API
Depths6 photos
Junior Project

Depths

3D Multiplayer Game

Depths is a cooperative multiplayer game where you and up to three friends delve into procedurally generated caves, collecting items, going deeper, making sure to meet quota every dive. Avoid the monsters that dwell in these caverns if you and your friends hope to make it out alive.

UnityC#JSONBlender
Punch4 photos
Freelance · Used Daily

Punch

Employee Time Clock for Basin Family Janitorial

Punch is a time tracking web app I designed, built, and deployed for Basin Family Janitorial, now used daily by their full 12 person team. It replaced manual hour tracking and text message pay period submissions. Employees clock in and out from their phones, and managers get a dashboard to review hours, fix punches, and export them directly to Gusto for payroll.

Next.jsTypeScriptSupabaseVercel
Details
Ashtray5 photos
In Progress

Ashtray

Log, Rate & Collect Mobile App

Ashtray is a mobile app for rating, reviewing and collecting cigarettes, modeled on Letterboxd and Discogs. Users log what they tried with a star rating, taste and moment tags, and a short review, building a Letterboxd-style diary. Collectors can catalog the packs they own by version and condition, browse each brand's history, and keep a wantlist. It records what a person tried and what they thought, not how much they smoke, so there are no daily counts, streaks or consumption badges. The current build is an interactive prototype, with the full app in development for deployment.

JavaScriptHTMLCSS
Details
Web Billiards
Playable in Browser

Web Billiards

8-Ball Pool in the Browser

Web Billiards is an 8-ball pool game that runs in the browser, where you can play a computer opponent or a friend on the same device. It has its own physics engine with spin (follow, draw and side), real 8-ball rules for groups, fouls, ball in hand and calling the 8, and an aim line that predicts where the cue ball and object ball will go. The computer opponent finds every possible pot, simulates each through the physics engine, and picks the shot that pots a ball and leaves the best next shot, with easy, normal and hard difficulty. All the art and sound effects are generated in code, with no image or audio files.

TypeScriptPhaserNext.jsReact
Zenith

Zenith

Personalized Workout Application

Zenith is a personalized workout application that allows the user to create and set routines for themselves while tracking their fitness progress.

ReactJavaScriptFirebase
Portfolio Website

Portfolio Website

This site

This portfolio website was created to showcase my projects and skills as a software engineer. Check out the source code on GitHub to see how it was built.

ReactNext.jsTypeScriptTailwind CSS
Used Car Price Predictor5 photos

Used Car Price Predictor

Machine Learning Models

Two machine learning models that predict the price of used cars based on various features such as make, model, year, mileage, and condition, using Linear Regression and K-Nearest Neighbors algorithms.

PythonScikit-learnPandasMatplotlib