Homelab Nexus
More than a dashboard - a comprehensive homelab management interface
Tech Stack
Requirements
- • Node.js 20+
- • Python 3.11+
- • Go 1.22+
- • PostgreSQL 15+
- • Redis
- • Docker (optional)
Features
- ✓ Network discovery and service detection
- ✓ Glass neomorphic dark UI
- ✓ In-browser Claude Code CLI
- ✓ Credential management with Infisical
- ✓ MCP server for external integrations
- ✓ Real-time WebSocket updates
- ✓ SSH and API-based service access
Why Build a Command Center?
A growing homelab accumulates services across multiple hosts - databases, orchestration tools, storage, virtualization. Tracking what’s running where becomes a chore:
- Services are scattered across Proxmox VMs, TrueNAS, and bare metal
- Credentials live in
.envfiles, password managers, and Infisical - No single view of what’s healthy vs. what’s down
- Running Claude Code requires terminal access to each machine
Homelab Nexus centralizes discovery, monitoring, and management into one interface with an integrated Claude Code terminal.
Architecture
Three services work together:
┌─────────────────────────────────────────────────────────────┐
│ SvelteKit Web UI │
│ Glass neomorphic dark theme + runes │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────┼─────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ FastAPI │ │ Go │ │ Redis │
│ API │ │ Bridge │ │ Cache │
└─────────┘ └─────────┘ └─────────┘
│ │
▼ ▼
┌─────────┐ ┌─────────────────┐
│PostgreSQL│ │ Network Scanner │
│ + pgvec │ │ + Claude CLI │
└─────────┘ └─────────────────┘
| Service | Purpose | Port |
|---|---|---|
| Web | SvelteKit frontend with glass UI | 3000 |
| API | FastAPI backend, MCP server | 8000 |
| Bridge | Go WebSocket server, Claude CLI wrapper | 8080 |
Key Features
Network Discovery
The Go bridge scans configured subnets for known ports and identifies services:
- Port scanning with configurable ranges
- Banner grabbing for service identification
- Automatic database population
- Health check scheduling
In-Browser Claude Code
The chat panel connects via WebSocket to the bridge, which wraps the local Claude CLI:
- Run skills (
/discover,/health-check) - Execute agent tasks with full context
- Interactive conversations
- No terminal hopping required
Credential Management
Credentials flow through Infisical:
- Discovered in local
.envfiles or Infisical - Associated with services
- Tested for validity
- Synced bidirectionally
MCP Server
The API exposes an MCP-compatible interface at /mcp:
Tools:
list_services- List all discovered servicesget_service- Get service detailsrefresh_service- Check service statusstart_discovery- Begin network scansync_secrets- Sync with Infisical
Resources:
nexus://services- All servicesnexus://discovery- Discovery jobsnexus://credentials- Credential metadata
Summary
| Benefit | Description |
|---|---|
| Visibility | Single pane of glass for all homelab services |
| Control | Manage services without SSH hopping |
| Integration | Claude Code access from anywhere |
| Security | Centralized credential management |