# Product Concept

## Problem

There is no widely available, lightweight online tool focused on practical planning of `10"` and `19"` racks with a visual workflow, reusable components, and a usable bill of materials.

Existing workflows are often split across:

- CAD tools that are too heavy for simple planning
- spreadsheets for the bill of materials
- manual sketches for positioning
- separate notes for cabling

## Vision

`code.it Rack Planner` should be a browser-based planning platform where users can:

- create and save rack layouts online
- visually place and move rack components
- load manufacturer-specific or custom components as plugins
- generate a bill of materials automatically
- estimate cable lengths between ports or devices

## Target users

- system integrators
- installers
- IT administrators
- AV and media technicians
- control cabinet / small infrastructure planners
- organizations documenting existing rack installations

## Primary use cases

1. Plan a new `19"` network rack with switch, patch panel, PDU, UPS, shelves, and servers.
2. Plan a compact `10"` wall rack for small office or edge installations.
3. Compare multiple rack variants with different hardware selections.
4. Export a bill of materials for ordering.
5. Estimate patch cable and power cable lengths based on mounting positions.

## Functional goals

- visual rack editor
- component catalog
- drag-and-drop placement
- snap-to-unit positioning
- collision and fit validation
- bill of materials generation
- import of additional component packs
- optional cable planning and length estimation

## Non-functional goals

- runs in a modern browser
- usable on desktop first, tablet second
- clean project persistence
- suitable for public internet deployment
- secure plugin loading model
- scalable enough for many concurrent users

## Scope boundary

The product should not try to replace full mechanical CAD in the first versions. The planning focus is:

- layout
- occupancy
- compatibility
- documentation
- ordering support

Mechanical precision modeling, freeform CAD editing, and simulation should remain outside the initial scope.
