Back to home

Portfolio

Six case studies. Different industries. All in production.

Every project here started with a real problem. Click any one to read the full story — problem, solution, tech, and what shipped. After the case studies, a lab section with the smaller stuff.

SaaS · InsuranceLive · In production daily

Insurance Ops Platform — Renewals, Tasks & Secure Intake

A multi-module operations platform for a small insurance team — renewal pipeline with seven status states, full audit log, secure tokenized client intake encrypted with TweetNaCl, and a notes-and-tasks workspace with assignment, due dates, file attachments, and end-of-day email reports.

React 19FirestoreTweetNaClResend
Read case study
Business · WebLive at englercontracting.com

Engler Contracting — Business Website

Complete business website for a tree contracting company built from a minimal brief. Full professional presence with an integrated Google Form lead capture system — designed and shipped with near-zero client hand-holding.

HTMLCSSGoogle FormsHosting
Live Website
Read case study
Infrastructure · AIDeployed · Internal platform

Enterprise AI Orchestration Platform

A platform team needed a way to run, route, and stream LLM workloads behind a single Kubernetes ingress. I built the orchestration layer in Go: model registry, MCP server registry, streaming chat, and a web frontend, all packaged with Helm.

GoKubernetesOllamaMCP
Read case study
Mobile + Web · Public DataLive on Google Play and web

PolkLookup — Property Records (Mobile + Web)

An offline-capable property lookup over 310k+ Polk County, FL public records — published as both a React Native app on Google Play and a browser app that runs SQLite in WebAssembly.

React Nativesql.js (WASM)SQLiteVercel
Live WebsiteGoogle Play
Read case study
Mobile · LLMLive on Google Play · Refresh in progress

Marigold — Recipe App with LLM Drafting

A cross-platform mobile app for managing, importing, and drafting recipes — running on iOS and Android with Firebase sync, URL-based recipe import, and a distraction-free cook mode. Currently being refreshed under the new name Marigold; the existing Play Store listing remains under the previous name.

React NativeExpoFirebaseLLM
Web AppGoogle Play
Read case study
LMS · DevOpsIn production · Enterprise education client

Moodle — Custom Plugins & Container Stack

Five custom Moodle plugins and a multi-stage container stack for an enterprise education client. PHP plugins handle automation, group sync, completion vaulting, and SQL reporting. The Docker image bakes a custom nginx with VTS metrics for Prometheus.

PHPMoodleDockerAzure OIDC
Moodle stack
Read case study

The Lab

Other things I've built.

Smaller projects — utilities, MCP servers, prototypes that didn't need a customer to be worth building. Some are live, some live on GitHub, some just live on my machine.

Web · Booking

HaliTaily

Property availability calendar backed by Supabase, with a date-picker UI for guests and admin-side scheduling.

React 19ViteSupabasereact-calendardate-fnsTailwind
Desktop · Internal

Cross-platform Desktop App

A cross-platform desktop client for an internal enterprise system, packaged for macOS and Windows. Login auth, Firebase-backed state, Zustand store.

ElectronReact 19ViteZustandFirebaseelectron-builder
Tooling · MCP3 servers · TS + Python

MCP Server Trio

Three Claude/MCP servers: a Simplified Technical English analyzer (TS), a Redmine issue manager (TS + Playwright), and an American Airlines award-flight finder (Python + headless Firefox).

Model Context ProtocolTypeScriptPythonPlaywrightExpress
Web · Marketing

SipHaus

Curated drinks-menu site with sophisticated filtering and animation. Built as a brand-forward visual portfolio piece.

React 19ViteTailwindFramer MotionReact Router
Web · Multiplayer

Couples Game

Multi-container Docker Compose multiplayer game with separate host, player, and server services, environment-driven config, and health checks.

Docker ComposeNode.jsReal-time messagingHealth checks
CLI · Video

Waveform Creator

A shell utility that extracts audio from video and renders transparent waveform overlays, encoded for drop-in use in DaVinci Resolve.

BashffmpegProRes 4444

Have a project like one of these?

Tell me about your project →