# MVP Scope ## Objective Release a public web application that solves the core planning workflow for `10"` and `19"` racks without waiting for full CAD-grade capabilities. ## MVP features ### 1. Rack editor - create a rack project - choose rack type: `10"` or `19"` - define rack height in `U` - define depth and optional width variant - front view editor with occupied `U` grid - drag-and-drop placement of components - move and reorder components - remove and duplicate components ### 2. Component library - built-in catalog with common rack elements - categories such as patch panel, switch, server, PDU, shelf, UPS, blank panel - searchable component picker - component detail panel with dimensions and metadata ### 3. Validation - enforce rack width compatibility - enforce `U` occupancy - warn on depth overflow - warn on weight limit overflow if rack limits are defined ### 4. Bill of materials - aggregate identical parts - export as `CSV` - show quantity, part number, manufacturer, description, unit price, total price - optionally list accessories separately ### 5. Plugin support - import component packs based on a defined manifest - metadata-driven components - 2D visuals via `SVG` - optional 3D visual asset reference for future use ### 6. Cable planning V1 - define cable links between two ports or two devices - estimate route length using rack positions - allow manual slack factor - include cables in bill of materials ## Deliberately excluded from MVP - freeform 3D editing - native browser editing of `STEP` or `DXF` - multi-rack room layout - thermal simulation - live collaboration - advanced permission and approval workflows - ERP integration ## Recommended MVP stack - frontend: `React` + `TypeScript` - editor rendering: `SVG` or `Canvas` for 2D rack view - backend: `Node.js` or `PHP` API, depending on preferred team stack - database: `PostgreSQL` - storage: object storage for plugin assets and exports ## Success criteria - a user can build a rack layout in under 10 minutes - the system prevents invalid `U` placement - the generated bill of materials is usable for procurement - plugin packs can be added without code changes in the editor - cable length estimates are close enough for practical preselection