--- type: project status: active source: git.alwisp.com repo: jason/rack-planner repo_url: https://git.alwisp.com/jason/rack-planner language: TypeScript branch: main tags: [repo, jason] updated: 2026-05-29 --- # rack-planner **Repository:** [jason/rack-planner](https://git.alwisp.com/jason/rack-planner) · branch `main` · TypeScript ## Summary RackMapper: self-hosted dark-mode web app for visualizing and managing network rack infrastructure — drag-and-drop rack planner and service dependency mapper for Unraid ## Current status Active. Synced from Gitea on 2026-05-29. ## Documentation overview # RackMapper A self-hosted, dark-mode web app for visualising and managing network rack infrastructure. Built for Unraid / Docker single-container deployment. ## Features ### Rack Planner (`/rack`) - Drag-and-drop module placement from a device palette onto U-slots - Drag modules between racks or reorder racks via header grip - Resize modules by dragging the bottom handle - Click any module to edit name, IP, manufacturer, model, notes, uSize - Port indicator dots — click any dot to open the port configuration modal - Set mode (Access / Trunk / Hybrid), native VLAN, tagged VLANs - Quick-create VLANs without leaving the modal - Export the full rack view as PNG ### Service Mapper (`/map`) - React Flow canvas for mapping service dependencies and traffic flows - Right-click canvas → add any node type at cursor position - Right-click node → Edit, Duplicate, Delete - Right-click edge → Toggle animation, change edge type, Delete - Double-click a node → edit label, accent colour, logical IP/Port, and rack module link - Logical Address mapping — assign IP and Port to any node type via metadata (stored as JSON) - Persistent storage — all node details and logical addresses are saved to the SQLite database - Auto-populate nodes from all rack modules ("Import Rack" button) - Connect nodes by dragging from handles; Delete key removes selected items - Minimap, zoom controls, snap-to-grid (15px), PNG export ### VLAN Management (`/vlans`) - Create, edit, and delete VLANs with ID, name, description, and colour - VLANs defined here are available in all port configuration modals --- ## Quick Start (Docker Compose) **1. Create a `docker-compose.yml`:** ```yaml version: '3.8' services: rackmapper: image: rackmapper build: . container_name: rackmapper ports: …(truncated — see repo) ## Notes - Project file auto-created from repo documentation.