What I’m working on
What I build
Projects across four disciplines. Pick a category to explore.
Recent Activity
Shipped an AI-friendly SEO baseline as a kit standard — robots.ts and sitemap.ts scaffold templates that allow AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Applebot-Extended) by default. Many sites have started reflexively blocking AI crawlers and forfeiting AI-routed audience traffic; the kit's default is to stay open and discoverable.
Graduated three local admin primitives into the kit at v0.2.2 — a dual-mode MediaPicker (drag-drop upload plus browse-existing), a ResponsiveSheet dialog (centered modal on desktop, right drawer on mobile), and a VenueImageWithOverride form field with a one-click promote-to-venue checkbox. The reference consumer (AJ and the Groove) deleted its local copies; future consumer projects get all three for free.
Codified the live-performance vertical as a first-class kit canon. sanity-admin-kit/shows ships canonical Show and Venue types, GROQ projection fragments, and pure-function primitives (maps URLs, calendar event builders, ICS download), plus an <AddToCalendarMenu> component with portal-pattern containment baked in. AJ became the reference adopter; future band sites extend the canon via TypeScript intersection rather than carrying bespoke types.
Shipped a venue-image-with-override admin primitive. Pick a venue and its standard photo previews on the show form; upload a per-show override and a "Make this the new venue image" checkbox appears — ticking it promotes the override to the venue and clears the show's now-redundant copy in a single save.
Reworked the rich-text styling on long-form show notes. Body copy switched from light italic to ink-dark roman, and editor-marked <em> emphasis regained visual contrast against the body — deliberate italic accents in a write-up now pop instead of disappearing into an italic block.
Where This Is Heading
What's Cooking
Several things at once, as usual:
- AI systems and automation that take repetitive work off people's plates
- Websites and web apps that ship and do what they're supposed to
- Building out entertainment spaces with live sound and light systems
- There have been a bunch of tools that started as a personal experiment and ended up solving a real problem for a real client
- I've been playing in a brand-new space for me — ARGs — Stay tuned for more
On the surface, those don't have much in common. But the same instincts that make a live show run smoothly are the ones that make a software system hold together under pressure. The people I work with get the benefit of all of it, and it's a whole lot of fun.
The Endgame
Same pattern as always, just covering more ground.
Decades across sales training, military service, and enterprise technology will do that. The focus has shifted hard into AI development over the last couple of years, and it's been a hell of a ride so far.
People come back to work with me and bring friends because something got solved, something shipped, and they've got more problems worth solving.
The work itself:
- AI and automation has moved past experimentation — it's running for real clients, on real deadlines, giving people huge amounts of time back in their week
- The sound and lighting work is still a blast — years on stage before I ever stood behind a board means the people performing get someone who knows what it feels like from both sides
- My friends and clients who get things solved keep coming back with more challenges and bringing new friends along that often become new clients.
No master plan. But the pattern holds, the range keeps expanding, and something useful comes out the other side.



