Coding

Apps, experiments, and practical tools I build to solve real problems β€” for myself, for communities I care about, and for clients. A working inventory that grows as I add screenshots and demos.

Most of these aren’t public yet. If you’d like to try one out or learn more about any project below, let me know!
Status: Live Active development Prototype Backburner Commit counts hint at time & attention spent.
Tags: 🌐 Platform Language Framework / tool Client / extends

Community & communication

πŸ‘‹Hangs

Jun 2026In dev

Coordination-light social network: people post what they’re already doing and others join with one tap β€” no RSVP, no organizing. Magic-link login, SMS reminders, and phone invites.

19 commitsWebNext.jsSupabaseVisit

πŸŽ™οΈRunMeets

Jun 2026Prototype

AI-assisted live workshop facilitation: records and diarizes a room, keeps a running summary and action ledger, and clusters discussion into idea cards on a shared, editable board.

47 commitsWebTypeScriptSwiftVisit

Discourse plugins

Reusable plugins and services that extend the Discourse community platform.

πŸ“…Events & Calendar

Apr 2026Live

A ground-up reimagining of Discourse events: where the official plugin bolts events onto ordinary forum topics, this makes an event a real content type β€” with calendar rendering, RSVP and waitlists, imports, reminders, and venues wired to the Places plugin.

297 commitsDiscourseRubyEmber

πŸ“ŒPlaces / POIs

May 2026Live

Adds a first-class, map-able Place content type β€” replacing brittle shared Google Maps lists β€” that also serves as event venues.

102 commitsDiscourseRubyEmber

πŸ”€Activity Views

May 2026Live

Serves an /activity route that merges categories, chat channels, and topics into a single interleaved activity feed for a community.

27 commitsDiscourseRubyEmber

🧭Owned Sidebar

Jun 2026In dev

Replaces the Discourse sidebar with a fully JSON-configurable block layout, including a collapsible chat-navigator tree, DMs, and threads.

15 commitsDiscourseRubyEmber

πŸ”ŽUnified Search

Jun 2026In dev

Permission-aware search across chat, places, events, and posts, with per-row access scoping and a dedicated endpoint for AI bots.

15 commitsDiscourseRubyPostgres

🎨Showcase

Jun 2026In dev

A member project-showcase surface with tags, sandboxed iframe embeds, an approval workflow, voting, and search.

13 commitsDiscourseRubyEmber

Also: Telegram Bridge, Agent Plaza Provisioner, Agent Village Commons, Chat Channel Categories, Topic From Form, and a set of theme components.

BigRigTravels

A live truck-camera and streaming system for a long-running trucking broadcast.

🌐Interactive Website

Dec 2025Live

The dynamic side of the site: a live driver-position map with local tile caching, an elevation and route profile, an RV stats widget, upcoming and current trip listings, a live / YouTube go-live indicator, the embedded truck-camera viewer, and route and trip-planning tools.

174 commitsWebPHPWordPressVisit

πŸ“ΊStream Overlay

Dec 2025Live

The live broadcast overlay: shows the truck’s current position (city and street), passing road signs, live weather, and subscriber-milestone celebrations, with a newer server-side renderer that rasterizes the overlay to WebP. Delivered as raster images for use in any livestreaming app, now driven by the custom BRT Broadcaster.

73 commitsWebPHPNode

πŸ“ΉBRT Broadcaster

Dec 2025Live

A fully custom livestreaming app built for long-haul drives: broadcasts simultaneous live video and interval stills with independent controls, live bitrate and focus adjustment, and continuous position logging that feeds the site’s live map and overlays.

102 commitsAndroidKotlinCameraX

Personal & productivity tools

πŸ€–Personal Assistant

Dec 2025In dev

A native Mac AI assistant that proactively checks in through the day: context-aware chat, task integration, long-term memory, and hybrid local/cloud model routing.

113 commitsmacOSSwift

πŸ—£οΈLogAssistant

Apr 2026In dev

Voice-logging system: record notes, background-upload, transcribe and summarize server-side, then review with high-speed playback, full-text search, and a Claude-backed chat assistant over your notes.

71 commitsAndroidKotlinPython

πŸ“ŠActivityAI

Dec 2025Backburner

Personal productivity analytics: imports computer-activity data, sessionizes it into blocks, and uses an LLM to classify and report how your time was actually spent.

19 commitsWebJavaScriptSQLite

πŸ’ΈAPISee

Apr 2026Live

Local-first cost tracker for API usage: syncs cloud billing, prices calls in real time, warns before you blow a budget, and exposes it all over MCP and a menubar dashboard.

11 commitsmacOSRustTauri

πŸ“–CookIndex

Prototype

Search your physical cookbook collection by ingredient: OCR-ingests each book’s index pages so you can find which book has the recipe you need.

WebPHPAlpine.js

πŸ”ygrepUI

Jan 2026In dev

A desktop control panel for the ygrep code-search CLI: manage indexed folders, rebuild text and semantic indexes, and run per-folder file-watch jobs.

macOSRustTauri

πŸ“„WPConverter

Apr 2026Usable

A drag-and-drop Mac app that converts legacy WordPerfect (.wpd) documents to plain text, decoding the old multi-byte formatting codes.

2 commitsmacOSSwift

Also β€” smaller tools & exporters: iMessageExport, telegram-export, otter-date-extractor, yt-subscription-dl, video-maint.

Health & habits

⏳Slow Your Scroll

Jul 2026In dev

Turns an infinite feed into a finite one: selected social feeds quietly wind down so they feel finished instead of endless. A local VPN gently injects latency past a scroll threshold, never a hard error.

25 commitsAndroidiOSKotlin

⏰Alarm Face

Jun 2026In dev

Native alarm clock that fires reliable OS-level alarms and gates dismissal behind on-device face detection β€” you have to actually look awake to turn it off.

8 commitsiOSAndroidMediaPipe

🧘MeditationTree

Jun 2026Live

A calm, scrolling recommender that guides you to meditation practices matching your temperament and goals, driven entirely by editable metadata.

4 commitsWebJavaScriptGoogle SheetsVisit

Music

🎀Karaoke Any Song

Dec 2025Live

Self-hosted AI karaoke: pulls any song, separates the vocals, transcribes word-level timing, and serves a player with real-time lyric highlighting and a synced video mode.

12 commitsWebPythonDemucsWhisper

🎢SingingTutor

Sep 2025Prototype

A practice tool for singers: organize warmups and songs across local files, YouTube, and Spotify into a simple three-playlist workflow.

11 commitsWebJavaScript

🎡Singing Events Organizer

Mar 2026Prototype

A custom app for invite-only singing-event coordination: contacts, scheduling, tokenized participant responses, performer intake, payment tracking, and reminder batching. Built for a client.

8 commitsWebPHPLaravelClient

Maps, places & data

πŸ‘¨β€πŸ³ChefLines

Feb 2026In dev

A knowledge graph of 20 years of SF Bay Area dining: chunks a 12,000-article archive, extracts people, places, and roles with an LLM, resolves them into a canonical database, and visualizes the lineage.

9 commitsCLIPythonTypeScript

πŸ—ΊοΈKeap Maps

Feb 2026Live

Store-locator map built for a client (Keap Candles), with separate Stockists and customer-Recommendations views and local map-tile caching for speed.

16 commitsWebPHPLeafletClientVisit

🍸RS Roadtrips

Jan 2026Prototype

Built for my gin company, Redwood Shire Gin: a β€œGrove to Glass” road-trip directory of partner wineries, bars, and shops, with a filterable list and an interactive map with detail views.

15 commitsWebPHPLeaflet

Photography tools

πŸ“·Personalized AI Photo Culling

In dev

Learns your personal taste from your existing Lightroom library and ranks new shoots by predicted preference, writing results back as Lightroom metadata. Unlike most AI cullers, it isn’t limited to people, portrait, or event work β€” it handles landscape, wildlife, product, and any subject.

CLIPythonPyTorch

πŸ–ΌοΈimmich-dng-extended

Jul 2026Live

An extension for the Immich photo server that adds RAW/DNG decoding it can’t do out of the box (Lightroom HDR/pano merges, newer phone RAW), by building patched image libraries with self-verification and automatic rollback. Open source.

4 commitsImmichBashDocker

Calendars & feeds

🌊TideCal

Jan 2026Live

Generates subscribable calendars of NOAA high/low tide events with height and daylight filters, plus optional sunrise/sunset events.

10 commitsWebPHPNOAA APIVisit

🌦️WeatherCal

Feb 2026Live

Generates subscribable weather-forecast calendars (with air quality) for any location, ready to add to Google, Apple, or Outlook.

WebPHPOpen-MeteoVisit

Games

πŸ¦–Isla Nublar Brawl

Jul 2026Playable

An unofficial fan-made dinosaur-island parody beat-’em-up: a canvas side-scroller with original arcade art, combat, and sound. Pure browser, no backend.

7 commitsWebJavaScriptCanvas

Browser userscripts

Small Tampermonkey scripts that add features to sites I use.

🏠Airbnb Per-Person Pricing

Jan 2026In use

Adds per-person-per-night pricing across Airbnb and VRBO listings, search cards, and map pins β€” for comparing group-travel value at a glance.

UserscriptJavaScript

πŸ₯ΎAllTrails Calorie Estimator

Jan 2026In use

Estimates calorie burn for a hike from its distance and elevation gain, with pack-weight and rucking support.

UserscriptJavaScript

▢️YouTube Playlist Autoclean

Jan 2026In use

Automatically removes each video from a playlist once you finish watching it, so your queue stays current.

UserscriptJavaScript