untyped.ca
My personal site, built to keep my work in one place. The home for my slide decks, my projects, and a living resume. Clean, minimal, no web fonts and no trackers, delivered from Cloudflare's edge.
Projects
A small selection of work, some shipped, some still in motion. More projects coming soon as I write them up.
Looking for slides? See my presentations.
My personal site, built to keep my work in one place. The home for my slide decks, my projects, and a living resume. Clean, minimal, no web fonts and no trackers, delivered from Cloudflare's edge.
A local AI chat app you run on your own machine. It loads GGUF language models in-process through llama-cpp-python, keeps every conversation on disk, and never depends on a cloud or a separate model server. Privacy-first, cross-platform, and heavily logged.
A privacy-first health and fitness tracking platform. End-to-end frontend and backend, with automation around content validation and internal workflows. Data-oriented architecture with auditability and privacy by design.
A personal operations dashboard I run on my own Arch Linux machine. One screen for system health and the background cron jobs I keep running, including an AI agent that scores incoming opportunities against my CV every morning and explains the fit.
A personal command-line tool for Arch Linux, written in Python. One command, arch, wrapping the daily-driver tasks I run most. Package updates, process search and control, and casting media to a Chromecast with the audio piped through correctly. The source is long gone, but it shaped how I think about CLI ergonomics.
A JavaScript library for the Twitch Messaging Interface that lets developers build chatbots and chat-driven apps for Twitch with minimal setup. Widely adopted across the Twitch developer ecosystem.