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

# Bed Board

> Real-time visual display of bed occupancy across all residences, grouped by facility type and room.

The Bed Board screen provides a live visual grid of all beds across facilities at `/rh/bed-board`, refreshing automatically every 30 seconds.

## Overview

The Bed Board displays summary statistics (Total Beds, Available, Occupied, Reserved/Maintenance) and a grid of bed cards grouped by facility type, then residence, then room or unit. Each bed card is color-coded by status: available (green), occupied (blue), reserved (yellow), and maintenance (muted). Occupied bed cards show the resident's full name, phase, and admission date, and are clickable to navigate to the resident's episode at `/rh/episodes/:id`. The board supports filtering by facility type (Recovery Housing, Behavioral Health Residential, Inpatient Unit) and by individual residence.

<Frame caption="The live bed board — occupancy across residences, color-coded by bed status (available, occupied, reserved, maintenance).">
  <img src="https://mintcdn.com/encoreos/FHgwdEuPbyKq-W7P/images/rh-beds/bed-board.png?fit=max&auto=format&n=FHgwdEuPbyKq-W7P&q=85&s=f5bf00f2b5580ed13fab9db5b57333d8" alt="Recovery Housing bed board showing bed occupancy across residences" width="1440" height="2323" data-path="images/rh-beds/bed-board.png" />
</Frame>

## Who it's for

Protected by `PermissionGate` with permission `rh.beds.view` inside the component, in addition to the outer `RH_PERMISSIONS.DASHBOARD_VIEW` guard on all RH routes. Users without `rh.beds.view` see an "Access restricted" message.

## Before you start

* Your account must have `rh.beds.view` and `rh.dashboard.view` permissions.
* At least one active residence with configured beds must exist for the board to populate.

## Steps

<Steps>
  <Step title="Navigate to Bed Board">
    Open Recovery Housing and select Bed Board, or go to `/rh/bed-board` directly.
  </Step>

  <Step title="Review summary statistics">
    The four summary cards at the top show totals for all beds, available beds, occupied beds, and reserved or maintenance beds.
  </Step>

  <Step title="Filter the board">
    Use the Facility Type and Residence selectors to focus the board on a specific subset of beds. Select "All facility types" or "All residences" to remove a filter.
  </Step>

  <Step title="Read a bed card">
    Each card shows the bed label, status badge, and — for occupied beds — the resident's name, phase, and admission date.
  </Step>

  <Step title="Navigate to a resident episode">
    Click an occupied bed card (it shows a pointer cursor) to navigate to the resident's active episode detail page.
  </Step>

  <Step title="Refresh manually">
    Click "Refresh" in the header if you need an immediate update outside the 30-second automatic interval.
  </Step>
</Steps>

## Key concepts

<AccordionGroup>
  <Accordion title="Bed statuses">
    Four status values appear on the board: `available`, `occupied`, `reserved`, and `maintenance`. Each has a distinct border and background color.
  </Accordion>

  <Accordion title="ADA accessible indicator">
    Beds with `is_ada_accessible: true` display a wheelchair icon on the card.
  </Accordion>

  <Accordion title="Auto-refresh">
    The board queries the database every 30 seconds via `refetchInterval`. The header subtitle shows the last-updated time.
  </Accordion>

  <Accordion title="Empty state">
    If no beds are found after filtering, the board shows "No beds found. Add residences and beds to see the board." with a link to Manage Residences.
  </Accordion>
</AccordionGroup>

## Related

<Columns cols={2}>
  <Card title="Recovery Housing" icon="house" href="/rh/references">
    Recovery Housing references and overview.
  </Card>

  <Card title="Governance & parity" icon="scale-balanced" href="/governance/index">
    Documentation coverage and governance.
  </Card>
</Columns>

<Note>
  This page documents shipped product behavior. It is not medical, legal, or
  billing advice. Verify against your organization's policies and applicable
  regulations before using it for clinical, compliance, or billing decisions.
  Protected health information (PHI) shown in the product is governed by your
  tenant's access controls and is never exposed in this documentation.
</Note>

<Accordion title="Documentation sources">
  * src/routes/rh.tsx
  * src/cores/rh/pages/BedBoardPage.tsx
  * src/cores/rh/hooks/useBedBoard.ts
  * src/platform/permissions/constants.ts
</Accordion>
