autorota

iOS shift-scheduling app for small teams — turns availability into a fair, editable weekly rota you can export and share. No accounts, no tracking.

personalSwiftiOS

dreamd

Cross-platform GUI markdown reader in Rust + Tauri, built for a tmux, Neovim, and Claude Code workflow. Typography freed from the terminal, plus a highlight → annotation → agent loop: mark passages as evidence, attach a question to each, stack them, and push the set to your agent in one action. Read-only; nothing is persisted.

personalRustTauridesktop

readingbuddy

Rust reading companion: federated book search across OpenLibrary and Google Books, epub and KOReader highlight import, and a markdown note vault with wikilinks — all in local SQLite. A CLI and a ratatui TUI share the engine; the TUI's centrepiece is a ray-traced 3D book rendered in Unicode block glyphs, upgrading to true pixels via kitty graphics when it parks.

personalRustTUISQLite

Circle & Slice

Website for a neighborhood dough-and-espresso house (pizza + bread + espresso). Astro static site with a color-zoned scroll, hand-drawn SVG illustrations, and CSS-only motion.

personalAstroCSSdesign

PDFA Conversion Tool

Written in OCaml, I built a PDF - PDF/A conversion tool which takes a pdf or set of pdfs as input and attempts to convert them into a PDF/a 1-b compliant file, including an automated testing framework written in Python.

workOCamlPythonCLI

Projects

My introduction to coding was using BASIC in high school math to model Reimann Sums. Since then, I've written a variety of software for school projects, personal interest, and for work. My proudest are detailed below.