Personal Dashboard
The Personal Dashboard is your configurable home screen in WorkDesk. Arrange widgets to show the metrics and shortcuts most relevant to your role — your layout is saved and restored on every login.
Dashboard Widget Grid
The dashboard is a responsive grid of widgets. Each widget is an independent component that fetches its own data and renders a focused piece of information or action.
Available Widget Types
| Widget | Component | Data Source | Description |
|---|---|---|---|
| Pending Tasks Count | PendingTasksCountWidget | GET /api/workdesk/inbox/count | Large number showing current inbox size — updates via EdgeStream |
| Recent Workflows | RecentWorkflowsWidget | GET /api/workdesk/executions?limit=5 | Last 5 executions with status badges and elapsed time |
| Metrics Tile | MetricsTileWidget | Grafana panel URL (iframe) | Embeds any Grafana panel — configure URL in widget settings |
| Quick Launch | QuickLaunchWidget | Static config | One-click buttons to trigger workflows or open apps |
| Announcement Banner | AnnouncementBannerWidget | GET /api/announcements | Admin-posted announcements — dismissible per user |
Adding and Arranging Widgets
Open Widget Picker
Click the + Add Widget button (top-right of dashboard). A panel slides in showing all available widget types with descriptions.
Select and Configure
Click a widget type to add it. Some widgets (e.g., Metrics Tile, Quick Launch) open a configuration form — enter the Grafana URL or the workflow to launch.
Drag to Reorder
In Edit Mode (toggle via the pencil icon), widgets show drag handles. Drag-and-drop to rearrange. The grid snaps to column positions.
Save Layout
Click Save Layout. The layout JSON is POSTed to PUT /api/workdesk/dashboard and persisted to your user profile record.
Layout Persistence
Dashboard layout is stored as a JSON document in the user's WorkDesk profile record. It is loaded on every login and applied before first render — no layout flash.
// Dashboard layout JSON (stored per-user)
{
"widgets": [
{ "id": "w1", "type": "PendingTasksCount", "col": 0, "row": 0, "w": 1, "h": 1, "config": {} },
{ "id": "w2", "type": "RecentWorkflows", "col": 1, "row": 0, "w": 2, "h": 1, "config": {} },
{ "id": "w3", "type": "QuickLaunch", "col": 0, "row": 1, "w": 3, "h": 1,
"config": { "shortcuts": [
{ "label": "Start Leave Request", "workflowId": "wf-leave-001" },
{ "label": "Start Purchase Order", "workflowId": "wf-po-002" }
]}
}
]
}
Administrators can define a default dashboard layout per role. When a new employee first logs in, the template for their role is applied. They can then customize from that starting point.