homelab / notebook / archive

Public surface for a private homelab.

I build the tools I wish existed.

Projects, services, generated media, and field notes from the systems I keep close enough to understand.

Built with automated workflows
webgenimgenvidgenPlaywrightNext.js

selected work

Case studies first, archive close behind.

The front door is the work with the strongest evidence: private AI tooling, agent handoff, and media systems that run on my own stack.

private devalpha prep, not open yet

Kanade

Private AI workstation. Guided onboarding, local provider lanes, Forge handoff, and memory that survives sessions.

What it runs

  • desktopprivate development build
  • memorysession ledger + vault context
  • bridgeForge, Discord, Obsidian
Open case study
v6 framedNext.js dashboard + Kanade handoff

Forge

Spec → branch → review loop. Codex, DeepSeek, and Claude as accountable agents inside one task board.

What it ships

  • agentsplanner / implementer / reviewer
  • handoffKanade both ways
  • evidenceartifacts on disk
Open case study
plus testingpublic BYOK demo + private test lane

Omakase

BYOK anime sommelier. Plus is in testing with accounts, AniList write-back, and an Overseerr request flow.

What it proves

  • modelsbring-your-own-key
  • animeAniList account loop
  • mediaOverseerr bridge
Open case study

how this site gets made

Tools that built this page.

Every surface on this site comes out of a private local workshop — a suite of generation CLIs I built (imgen, vidgen, voicegen, soundgen, notebookgen) orchestrated by webgen, with Ditto for reference capture and Playwright for browser proof. All automated, all self-hosted.

imgenImage generationGenerates and curates site plates from local prompts before anything reaches the page.
vidgenVideo loopsTurns still art into short loops, then keeps only motion that survives audit.
voicegenVoice & TTSProduces narration and voice tests for media-heavy surfaces.
soundgenSFX & ambientBuilds small audio beds and interface texture for experiments.
notebookgenResearch briefingsPackages source notes and references so the build has context instead of vibes.
webgenSite orchestratorCoordinates page briefs, media candidates, QA runs, and handoff notes.
DittoReference captureCaptures reference material and project state before the generated pass starts.
PlaywrightBrowser proofChecks real rendered pages for routing, console health, layout, and visual regressions.
Next.jsApp frameworkServes the App Router shell, project pages, image pipeline, and static export path.
shadcn/uiComponent systemKeeps low-level controls consistent while the editorial surface stays custom.

Generated media stays on disk until it earns a spot. The browser has the final say.

service ledger

A public index of the private stack.

currentlyShipping AI tools and homelab automation, one tool at a time.

/now

latest field note

The day my Proxmox backups silently broke

A real backup incident caused by a multi-disk LXC, a freezer race, and the very specific kind of humility that only backup systems can teach.

Read the post