service matrix
Homelab services by role, status, and operating shape.
33 public entries, filtered without hiding the system behind oversized cards.
stack map
Public notes for systems I operate, maintain, or keep as documented patterns.
Services are grouped as operating surfaces instead of raw rows: media, AI, automation, observability, and the support pieces that make them durable.

Notes on how the wildcard DNS rewrite and the reverse proxy work together to route every internal hostname.
plannedinfraAdGuard HomeNetwork-wide DNS resolver and ad blocker — also the source of truth for every internal hostname.
runninginfraAdGuard Home (secondary)Failover DNS resolver for my workstation — mirrors the primary, runs on the other Proxmox node.
runningmediaAniBridgePlex → AniList sync daemon. Watches anime playback events and updates AniList episode progress.
runninginfraDocker on LXC — the patternFive Docker-hosting LXCs across two nodes. Notes on why per-LXC isolation beats a single mega-Docker host.
runninginfraDocker Sandbox LXCThe experiment host: code-server, Maestro Bot, Shirase, Forge Bot, Kanade's Discord bridge, and the small always-on tools that do not belong on the edge host.
runningautomationForge BotPersistent Discord relay for Forge: posts run status cards, keeps the notification path alive, and routes replies back into the local dashboard.
runningobservabilityGrafana + Prometheus stackTime-series metrics, historical graphs, threshold alerting. The 'why is the cluster slow?' answer engine.
runningautomationHome AssistantSmart-home hub running my bedroom Sleep Lab — environmental tracking, humidifier control, and nightly AI briefings.
runningproductivityHomepageThe internal dashboard I land on. One page with service status, key metrics, and click-throughs to the underlying apps.
runningmediaImmichSelf-hosted photo library. The Google Photos replacement that doesn't read my photos.
runningaiLM StudioCanonical local LLM runtime on the Zenbook/Jarvis host, serving an OpenAI-compatible API to Home Assistant, Open WebUI, n8n, and read-only agent health checks.
runningautomationn8nWorkflow automation. Currently runs the Watchtower → LLM → Discord update-advisor pipeline.
runningproductivityNextcloudSelf-hosted file storage and sync — the Google Drive replacement. Also where my Obsidian vault syncs to.
runninginfraNginx Proxy ManagerThe reverse proxy in front of every internal service — turns IP-and-port into a real hostname with TLS.
runningaiOllamaLegacy local LLM fallback on Zenbook/Jarvis. LM Studio is canonical now; Ollama stays for the model picker and safety net.
degradedaiOpen WebUIBrowser chat UI for local LLMs on Zenbook/Jarvis. Plugs into LM Studio as the main runtime and Ollama as legacy fallback.
runningmediaOverseerrRequest management for Plex. Browse what's available, request what's missing, get notified when it lands.
runningmediaPlexMedia server for movies, TV, and anime — the front door for everything I watch.
runninginfraPortainerWeb UI for managing Docker across every LXC in the cluster from one pane.
runninginfraProxmox Backup ServerDaily snapshots of every VM and container in the cluster, stored on a separate physical disk.
runninginfraProxmox VEType-1 hypervisor running my homelab as a two-node cluster on consumer hardware.
runningaiQwen TTS RunnerLAN-only text-to-speech runner on the Zenbook/Jarvis AI host, kept as an experimental lane for local voice tests.
degradedmediarclone-zurg FUSE mountSystemd-managed FUSE mount that bridges a remote media catalogue into a regular filesystem path. The thing Plex, Riven, and Seanime all read.
runningmediaRivenSymlink-based media manager for the remote-media → Plex pipeline. Now optional in the playback path — kept running for the request-handling features.
runningmediaSeanimeSelf-hosted anime player and AniList tracker — a second viewing client for the same library Plex serves.
runningautomationShiraseApproval-gated Discord notification bot for project updates: draft, DM preview, owner approval, then post.
runningproductivityStirling PDFSelf-hosted PDF utility — merge, split, OCR, convert, watermark, redact. The Swiss army knife of paperwork.
runninginfraTailscaleMesh VPN with redundant subnet routers — my homelab's LAN follows me anywhere I have a connection.
runningmediaTautulliWatch history and statistics for Plex. Mostly: 'who's streaming right now and what is the server doing about it.'
runningobservabilityUptime KumaUp/down monitoring for every service in the catalog. The 'is anything red right now?' single source of truth.
runningsecurityVaultwardenSelf-hosted Bitwarden-compatible password manager — the root of trust for the whole homelab.
runninginfraWatchtowerContainer-update advisor across every Docker LXC. Detects new images, never auto-applies — feeds an n8n + LLM pipeline that scores risk before notifying me.
running