> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hyperwisor.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Core Concepts

> Product, device, user, and dashboard — the four ideas everything builds on.

Four concepts tie the platform together. Once these click, the manufacturer,
user, and integrator journeys all make sense.

## Product

A **product** is the manufacturer's design — a reusable template, not a physical
thing. It bundles:

* **Commands** — the actions the product can perform
* **Database schema** — tables for the data it stores
* **Dashboard** — the UI users get out of the box
* **Firmware** — the code that runs on the hardware

One product can be manufactured into many physical devices.

## Device

A **device** is one physical unit running a product's firmware. It has a unique
identifier and connects to the realtime channel with it. A device emits values
and receives commands — that's all that's required of it.

<Note>
  The platform tracks an identifier with a payload. What that device *is* — a bus,
  a sensor, a smart meter — is defined entirely by how the dashboard maps the
  payload, not by the platform.
</Note>

## User

A **user** owns one or more devices. They onboard a device by scanning its QR
code, which links the device to their account. From then on they monitor and
control it through the manufacturer's dashboard — or a custom one.

## Dashboard

A **dashboard** is a canvas of widgets bound to device data. Two kinds:

* **Manufacturer dashboard** — ships with the product, the same for every user
* **Custom dashboard** — built by a user or integrator across any devices they own

Widgets read device values (by widget ID and field paths) and send commands back.

## How they relate

```mermaid theme={null}
flowchart TD
  P["Product<br/>commands · schema · dashboard · firmware"] -->|manufactured into| D1[Device A]
  P -->|manufactured into| D2[Device B]
  D1 -->|onboarded by| U[User]
  D2 -->|onboarded by| U
  U -->|monitors via| DB[Dashboard]
  D1 -. value .-> DB
  DB -. command .-> D1
```

<CardGroup cols={2}>
  <Card title="Manufacturer journey" icon="wrench" href="/firmware/overview">
    Build the product and its firmware.
  </Card>

  <Card title="The core loop" icon="diagram-project" href="/learn/how-it-works">
    How values and commands flow.
  </Card>
</CardGroup>
