Projects

Ideas, built out.

Personal tools, collaborative projects,
and a lab to keep learning in.

These are generalized project summaries, with project names and identifying details omitted. Contact me for full project details and my complete résumé.

9 projects

Applications Team project

Understanding campus spaces

Awarded First Place at the WSU CougHacks hackathon · 2026

A campus application exploring shared views of spaces, audio-level heatmaps, and connected video and audio devices for students and security staff.

  • Web applications
  • IoT
  • Audio & video
About the build

Combines a floorplan interface with IoT streams to help students locate quiet or active areas while supporting a separate security workflow.

Applications Team project

More private conversations

Awarded First Place at the WSU CougHacks hackathon · 2025

A web and mobile messaging project for care-home residents, friends, and family, with personal-information filtering before messages are stored.

  • Web & mobile
  • Messaging
  • Privacy
About the build

Explores how to keep people connected while limiting the identifying information passed through a messaging system.

Applications Team project

Making habits visible

Awarded First Place at the WSU CougHacks hackathon · 2023

A habit-tracking application built with a SvelteKit interface, a Python API, and a relational database.

  • SvelteKit
  • Flask
  • PostgreSQL
About the build

A collaborative project bringing together frontend development, backend API design, persistent data, and cloud deployment.

AI Working prototype

An AI conversation partner

A locally running language-learning prototype that pairs spoken conversation with an animated, lip-synced character. Built around Japanese practice, with an English mode too.

  • Python
  • TypeScript
  • Three.js
  • Local inference
About the build

Connects speech recognition, a local language model, speech synthesis, and a browser-based 3D avatar. Pronunciation scoring and additional languages remain future work.

AI Personal project

Speech for typed messages

A self-hosted voice-channel tool that reads typed messages in a participant’s registered voice, using their own audio sample.

  • TypeScript
  • Whisper
  • Qwen3-TTS
  • SQLite
About the build

Combines local transcription and speech synthesis with a per-channel playback queue. Voice registrations can be removed, and speech generation releases GPU memory between jobs.

Systems In development

Keeping a service reachable

A Linux service that coordinates a shared IP address across machines using peer heartbeats, health checks, and an ownership election.

  • C++23
  • Linux
  • Networking
  • Next.js
About the build

Includes a dry-run mode, optional quorum and self-fencing, and a web dashboard. The software is pre-release; real failover behavior still needs validation in the target environment.

Applications Team project

A place for everything

A home inventory application for keeping track of items, their photos, and where they belong. Built collaboratively with separate web and API layers.

  • Next.js
  • Flask
  • MongoDB
  • Python
About the build

Uses a document database to organize containers and items, with an image-storage service and a web interface for finding belongings.

AI Experimental

Two-way AI audio

An audio bridge between a group voice call and a local speech-to-speech model, designed for conversations where listening and speaking can overlap.

  • TypeScript
  • WebSocket
  • FFmpeg
  • GPU inference
About the build

Mixes participants’ audio, converts sample rates, and streams it over WebSocket. The model server has been brought up; end-to-end latency, echo, and turn-taking still need hardware validation.

Systems Hardware research

Inside a network transceiver

Python tooling and research into reading, backing up, and comparing transceiver EEPROM data through a USB programming device.

  • Python
  • USB
  • EEPROM
  • Diagnostics
About the build

A targeted compatibility change was written and verified, but the intended switch still did not establish a link. The research documents that unresolved result alongside recovery steps.

The homelab

A place to experiment.

A Proxmox rack server for ZFS storage, local AI, media, networking, and a Kubernetes learning environment.

Explore the lab
Server processors
2 × Intel Xeon E5-2690 v3
Compute
24 cores / 48 threads
Memory
128 GB DDR4 ECC registered · 2,133 MT/s