Projects
Every project here started with a real problem: a team's, a community's, or both.
Case Studies
Case StudyOmniDex
Asset packs accumulate faster than anyone can remember what's in them. Finding a specific texture means either remembering the file path or waiting five minutes for Unreal to open. OmniDex is a desktop app that indexes everything locally: search by name, see thumbnails and marketplace ratings, and match your Fab purchases against what's actually on disk, without opening the engine. Built for the kind of personal organization that large projects depend on.
Co-Founder & Design Engineer · Umbra Labs · 2025 - Present
Case StudyWavHaven
Every marketplace we used as producers felt like the same storefront: upload, tag, list, disappear into one undifferentiated pool. The scenes we actually lived in (rage, jerk, whatever breaks next) had no home on any of them. WavHaven is built around those scenes: the community and the discovery engine both know what scene you belong to.
Co-Founder & Design Engineer · Umbra Labs · 2025 - Present
Case StudyBastion
The security industry sells to enterprises and lets everyone else figure it out. Schools, clinics, and small firms carry real compliance obligations with one IT admin and no security team. Bastion is a Rust EDR built for that gap: detection through response in a single agent, a native desktop console, HIPAA and FERPA controls enforced in code, at $3 per seat per month.
Co-Founder & Design Engineer · Umbra Labs · 2025 - Present
Case StudyOmniSpice
Every EE program teaches SPICE, and most teach it through LTspice: a Windows install from another decade, on lab machines IT has locked down, useless on the Chromebooks half the class actually owns. Friends working through circuits coursework all hit the same wall. OmniSpice is the replacement I'm building: draw the circuit in a browser tab, watch it simulate live as you scrub a resistor value, and send the result straight back to the course gradebook.
Co-Founder & Design Engineer · Umbra Labs · 2026 - Present
Case StudyKinesia
Friends who tried to get into fitness kept quitting within weeks. Every app gave them a workout. None explained why a specific exercise targets a specific muscle, or what the evidence says about rep ranges and progressive overload. So they followed plans blindly, hit a plateau, and stopped. Kinesia is a React Native workout tracker built around one constraint: every exercise recommendation must cite a published study. Not "exercise science" in the abstract. Specific citations. Barbell back squat activates vastus lateralis at 85% MVC. Source included. Apps like iMuscle 2 and JEFIT BodyMap already solve the "tap a muscle, see exercises" problem well, with far more content than a v0.1.0 project. Kinesia's angle is different: it tracks workouts and builds habits, but the exercise database is a research database first. Form cues are cited. Load progressions reference specific studies. The stack is React Native and Expo for mobile, Three.js for the anatomical model, Fastify and Supabase on the backend, and Turborepo to keep the monorepo manageable. Gamification follows the Duolingo pattern: streaks, XP, badges. v0.1.0, early in development. The 3D model, exercise database, and habit loop are the foundation. The bet is that people who understand why an exercise works stick with it longer than people following a plan on faith.
Co-Founder & Design Engineer · Umbra Labs · 2025 - Present
Case StudyLoom
Unreal Engine work scatters across the Blueprint editor, config files, build scripts, and a dozen asset editors. Loom puts one semantic layer over all of it: 41 namespaces and 558 operations that let anyone on the team ask for a replicated variable, a GAS ability, a sequencer track, or a C++ class and get it built, validated, and compiled. When Epic shipped its own official UE 5.8 MCP, Loom plugged into it instead of competing with it. One endpoint now serves both.
Lead Developer · 2026 - Present
Hiraeth
Hiraeth is a survival horror game built in Unreal Engine 5 with a team of six. Once production started, every gameplay change routed through me — a bottleneck for five other people who needed to keep moving. Loom and OmniDex came out of that constraint, built so the team could ship without waiting on a single person. They use them daily.
Technical Lead / Engine & Environment Lead · 2025 - Present
