Palette
export const projectIndex = {

Projects

} // selected software projects

const projectList

// 17 items
Personal
17

Pior Labs Cookbook

→

A self-hosted household recipe manager with serving scaling, meal planning, grocery lists, AI recipe import, and MCP access, built quickly on top of the Pior Labs platform.

TypeScript badgeReact badgeVite badgeHono badgePostgreSQL badgeDrizzle badgeBetter Auth badgeOpenAI badgeMCP badgePlaywright badgeDocker badgeGitHub Actions badgeCaddy badge
Personal
16

Expanding My Self-Hosted Media Server

→

Migrating my Raspberry Pi media stack to an upgradeable OptiPlex, adding photo storage and a central dashboard, and using the same service addresses at home and remotely.

Debian badgeDocker badgeNginx badgeTailscale badgeCloudflare badge
Personal
15

Pior Labs

→

A private, self-hosted household platform with shared authentication, design, data, networking, and deployment infrastructure for independently deployed productivity tools.

TypeScript badgeReact badgeHono badgePostgreSQL badgeDrizzle badgeBetter Auth badgeDocker badgeCaddy badgeTailscale badge
Personal
14

FinLens

→

A deployed, self-hosted household finance tracker with PDF statement imports, manual transaction review, spending dashboards, central SSO, and a read-only MCP server.

TypeScript badgeReact badgeVite badgeTailwind CSS badgeHono badgePostgreSQL badgeDrizzle badgeBetter Auth badgeMCP badgeDocker badgeGitHub Actions badgeCaddy badge
Personal
13

OptiPlex Home Server

→

Converting a decade-old Dell OptiPlex into a headless home server for self-hosting on hardware I already owned.

Debian badgeCaddy badgeCloudflare badgeTailscale badgeDocker badge
Personal
11

Discord Bot

→

Discord bot that helps organize gaming meetups by creating groups, proposing events, and collecting RSVPs directly in chat. It was containerized for deployment and self-hosted on my own VPS, with reminder messages to help players keep track of upcoming events.

TypeScript badgeBun badgeSqlite badgeDrizzle badgeDocker badgeDiscord.js badgeGitHub Actions badge
Personal
10

Personal Wedding Website

→

I built my wedding website as both a personal project and a serious test of agentic coding. Designed for around 200 guests, it included custom RSVP flows, an admin dashboard, guest management tools, and a strong focus on mobile performance and reliability.

Next.js badgeTypeScript badgeSupabase badgePrisma badgeResend badgei18n badge
Work
09

Judicial Help Desk Email App

→

A desktop tool for submitting IT support requests with issue details, attachments, and basic device diagnostics.

PowerShell badgeWPF badgeXAML badge
Work
08

Internal Order Management Webapp

→

Internal order and inventory management system for tracking hardware assets from purchase to deployment. It supports ordering, receiving, assigning, returning, and administering user access.

Vite badgeReact badgePM2 badgeDocker badgeGitHub Actions badgeTailwind CSS badgeTypeScript badgeNode.js badge
Freelance
07

Next Level Therapy

→

Practitioners medical clinic located in Mississauga Ontario looking for a modern and professional website with a focus on a native mobile experience.

TypeScript badgeNext.js badgeResend badgeTailwind badgeBun badge
Personal
03

Spotidash

→

Leveraging the Spotify API, SpotiDash allows users to view their top tracks, artists, and new releases, all in one place.

Next.js badgeTypeScript badgeTailwind CSS badgeShadcn/ui badgeNextAuth.js badgeSpotify API badgeFramer Motion badgeVercel badge
Personal
02

React AI TicTacToe

→

This project is a simple implementation of the classic Tic Tac Toe game, allowing users to play against Anthropic's Claude AI in a fun and interactive way.

React badgeTailwind badgeRender badgeNetlify badgeAnthropic API badge