> For the complete documentation index, see [llms.txt](https://docs.valtimo.nl/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.valtimo.nl/configuration-guides/dashboard.md).

# Dashboard

Dashboards provide customizable analytics views composed of widgets. Each widget combines a data source (where data comes from) with a display type (how data is visualized) to show metrics like case counts, task counts, or grouped statistics.

This section covers:

* [**Widgets**](/configuration-guides/dashboard/widgets.md) — Configure widgets with data sources and display types

***

## Configuring dashboards

{% stepper %}
{% step %}
Navigate to **Admin** in the sidebar
{% endstep %}

{% step %}
Click **Dashboard**

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-231a1348cee192c907d32a518ab77a36dcf79b07%2F01-dashboard-list.png?alt=media" alt="Dashboard configuration list"><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

***

### Creating a dashboard

{% stepper %}
{% step %}
Click **Add new dashboard**

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-880a6f13c3b7c26691821516dee2c3a85310ddf8%2F02-create-dashboard-modal.png?alt=media" alt="Add new dashboard modal"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Enter the dashboard name and description
{% endstep %}

{% step %}
Click **Create**
{% endstep %}
{% endstepper %}

| Property       | Description                                                                                |
| -------------- | ------------------------------------------------------------------------------------------ |
| Dashboard name | Display name shown in the UI (required)                                                    |
| Description    | Text explaining the dashboard's purpose (required, visible only in the configuration page) |

***

### Editing a dashboard

{% stepper %}
{% step %}
Click on a dashboard row to open its detail view

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-db9097cb7ad66456c618526457b49c1caa838b4c%2F03-dashboard-detail.png?alt=media" alt="Dashboard detail view"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Click **Edit** in the page header

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-6a72e9e48e59c8ed6417685bc257b8029429a1ad%2F04-edit-dashboard-modal.png?alt=media" alt="Edit dashboard modal"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
Modify the dashboard name, description, or layout algorithm
{% endstep %}

{% step %}
Click **Complete** to save changes
{% endstep %}
{% endstepper %}

#### Layout algorithm

The layout algorithm determines how widgets are arranged on the dashboard.

**Default**

Muuri's plain masonry layout that keeps widgets in their configured order.

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-4d063a3faaf3cc2df8ed1cd5e7c8e1839ae3a093%2F08-layout-default.png?alt=media" alt="Default layout"><figcaption></figcaption></figure>

**Default (less gaps)**

Muuri's masonry layout with gap filling, keeps widgets in their configured order.

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-5b5a5c2254316805ac9f1e2d11b587da3d5b460a%2F09-layout-less-gaps.png?alt=media" alt="Default (less gaps) layout"><figcaption></figcaption></figure>

**Gap free**

Custom gap-free packing that may reorder widgets within a section to remove gaps.

<figure><img src="https://3330064618-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq5dx9HWFJGshztp4binE%2Fuploads%2Fgit-blob-6c439531c66bac77507976a565208f2ee33a5541%2F10-layout-gap-free.png?alt=media" alt="Gap free layout"><figcaption></figcaption></figure>

{% hint style="info" %}
Default and Default (less gaps) keep widgets in their configured order as much as possible, which can leave empty gaps. Gap free may reorder widgets within a section to remove those gaps.
{% endhint %}

***

### Deleting a dashboard

{% stepper %}
{% step %}
On the dashboard list page, click the overflow menu (three dots) on a dashboard row
{% endstep %}

{% step %}
Click **Delete**
{% endstep %}

{% step %}
Confirm the deletion
{% endstep %}
{% endstepper %}

***

## Access control

Access to dashboards can be configured through access control. More information about access control can be found [here](/configuration-guides/access-control.md).

### Resources and actions

| Resource type                            | Action      | Effect                                            |
| ---------------------------------------- | ----------- | ------------------------------------------------- |
| `com.ritense.dashboard.domain.Dashboard` | `view`      | Allows viewing a specific dashboard               |
|                                          | `view_list` | Allows viewing dashboards in lists and navigation |

### Examples

<details>

<summary>Permission to view all dashboards</summary>

```json
{
    "resourceType": "com.ritense.dashboard.domain.Dashboard",
    "action": "view",
    "conditions": []
}
```

</details>

<details>

<summary>Permission to view dashboards in navigation</summary>

```json
{
    "resourceType": "com.ritense.dashboard.domain.Dashboard",
    "action": "view_list",
    "conditions": []
}
```

</details>
