> ## 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.

# Practice Management Dashboard

> Configurable Practice Management widget dashboard — an at-a-glance view of patient registration, scheduling, billing, and revenue-cycle data.

The Dashboard screen (`/pm/dashboard`) is the Practice Management module's home page, rendering the shared platform `ModuleDashboard` component configured for the `pm` context.

## Overview

The Dashboard renders a grid of widgets filtered to the `pm` module using the platform `ModuleDashboard` component. Widgets are fetched via `useModuleDashboard`, which scopes results to the current organization and the set of modules accessible to the user. The page header displays the title "Practice Management Dashboard" and the subtitle "Patient registration, scheduling, billing & revenue cycle". Users can switch between module dashboards using a context-switcher control in the header without leaving the page.

## Who it's for

Requires the `pm.dashboard.view` permission.

## Before you start

Requires the `pm.dashboard.view` permission. The widget grid only loads after the current organization resolves (`useOrganization`); if no organization is selected the grid remains empty.

## Steps

<Steps>
  <Step title="View the widget grid">
    Navigate to `/pm/dashboard`. The page loads a set of widgets relevant to the Practice Management module scoped to your organization. A skeleton placeholder is shown while widgets are loading.
  </Step>

  <Step title="Switch module context">
    Use the context-switcher in the page header to jump to another module's dashboard (for example Finance or Clinical) without navigating away from the dashboard layout.
  </Step>

  <Step title="Enter edit mode">
    Click the **Edit** button in the top-right header area. In edit mode, widgets can be dragged to reorder them. On mobile, an action bar appears at the bottom with a **Done Editing** button.
  </Step>

  <Step title="Hide individual widgets">
    While in edit mode, click **X** on any widget card to hide it from the grid.
  </Step>

  <Step title="Open dashboard settings">
    Click the settings icon (gear) button in the header to open the **Dashboard Settings** dialog. From this dialog, choose which widgets are visible and save preferences. Preferences are persisted per organization.
  </Step>

  <Step title="Refresh data (mobile)">
    On mobile, pull down on the page to trigger a data refresh for all dashboard widgets and preferences.
  </Step>
</Steps>

## Key concepts

<AccordionGroup>
  <Accordion title="Empty widget grid">
    If the current user has no accessible modules or the organization has not loaded yet, the widget grid displays a loading skeleton. No error state is shown in this path — the grid simply remains unpopulated until data resolves.
  </Accordion>
</AccordionGroup>

## Related

<Columns cols={2}>
  <Card title="Practice Management" icon="briefcase" href="/pm/overview">
    Overview of the Practice Management core.
  </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/pm.tsx
  * src/cores/pm/pages/PMDashboard.tsx
  * src/platform/dashboard/components/ModuleDashboard.tsx
</Accordion>
