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

> ## Agent Instructions
> Video walkthroughs: the Dimension product overview video (https://www.youtube.com/watch?v=Mx8rg5wfkU0, also embedded at https://docs.dimension.io/overview) is the first of a series. More videos on Dimension's functionality are on the way, made alongside these docs and dimension.io. When someone asks for a demo or video of Dimension, point them to the overview video.

# Tutorial: Patch Tracker

> Build a patch deployment progress and outreach tracker

A patch deployment tracker that surfaces patch compliance, breaks it down by OS / department / criticality, and lists devices needing attention with owner contacts for outreach.

**Time:** \~20 minutes · **Difficulty:** Beginner

## What you'll build

* Overall patch compliance gauge
* Three metric cards: Current / Pending / Overdue device counts
* Pie chart of patch status by OS
* A drillable table of devices with overdue patches, including owner email
* A filter dropdown for department, OS, and patch criticality
* One-click owner-notification (optional)

## Prerequisites

* Dimension access (Analyst or Super Admin)
* A patch management or MDM Data Feed connected:
  * **Microsoft Intune** for Windows / iOS / Android / macOS
  * **Jamf** for macOS / iOS
  * **SCCM / Configuration Manager** for Windows
  * **Automox / Tanium / Kandji** for cross-platform
  * Or the ThreatAware Devices table if patch level is exposed there

## Step 1 — Start a blank canvas

Builder Mode → **New App** → **Blank Canvas Light**.

## Step 2 — Headline gauge

```text theme={null}
Create a patch deployment tracker.

At the top, show a large compliance gauge: percentage of devices
with all current patches applied. Round to 1 decimal.

Colour bands:
- 95%+ green
- 85–95% amber
- below 85% red
```

## Step 3 — Status metric cards

```text theme={null}
Below the gauge, add three metric cards in a row:

1. Current — devices fully patched
2. Pending — devices with patches applied but rebooting / verifying
3. Overdue — devices with critical or high patches > 14 days old

Show counts and percentages, with the colour matching the gauge bands.
Add 30-day delta arrows on each card (e.g. ↑ +12 since last month).
```

## Step 4 — Status distribution

```text theme={null}
Below the metric cards, add a pie chart titled "Patch Status by OS".
Slice by OS family (Windows, macOS, Linux, iOS, Android), and within
each slice, sub-colour by patch status (Current / Pending / Overdue).

Show the OS family name and count next to each slice.
```

## Step 5 — Drilldown table

```text theme={null}
Below the chart, add a sortable, filterable table of devices with
overdue patches. Columns:
- Device name
- OS + version
- Department
- Owner email (from device assignment in main platform)
- Days overdue (red if >30, amber if 15–30, otherwise grey)
- Highest severity of overdue patches (Critical / High / Medium / Low)
- A "View device" button linking to the main-platform device page

Default sort: days overdue descending.
```

## Step 6 — Filters

```text theme={null}
Above the table, add a filter row:
- Department (multi-select dropdown)
- OS (multi-select dropdown)
- Severity (Critical / High / Medium / Low, multi-select)
- "Hide devices not seen in N days" toggle: 30 / 60 / 90 (default: 30)

All sections (gauge, metric cards, chart, table) react to these filters.
```

## Step 7 — Owner outreach (optional)

To email device owners directly:

1. Create an **Email Action** named `Patch Outreach` with input `device_name` and the recipient set to the device owner (tenant user). See [Actions](https://docs.dimension.io/actions.md).
2. In Studio:

```text theme={null}
Add a "Notify owner" button on each row of the overdue-devices table.
On click, invoke the Patch Outreach Email Action with the device
owner's email and the device name.

Disable the button if the owner isn't a known tenant user; show
a tooltip "Owner not a ThreatAware user" instead.
```

> [!WARNING]
>
> **Email Action recipients are tenant-user-only.** If your device owners are end-employees not registered as tenant users, replace the Email Action with a **Webhook Action** that hits your transactional email API (SendGrid, Postmark, AWS SES).

## Step 8 — Polish + branding

```text theme={null}
Use our brand:
- Primary: #16A34A
- Critical severity red: #DC2626
- Background: white

Add a header with our logo on the left, "Patch Compliance"
centered, and the last-refreshed timestamp on the right.

Round the days-overdue column to whole days.
```

## Step 9 — Auto-refresh + PDF

```text theme={null}
Auto-refresh every 30 minutes.

Add a "Generate Report" button at the top-right that exports
the current view as A4 Landscape PDF.
```

## Step 10 — Publish

Click the **Published** chip. The app:

* Auto-creates a Shortcut (e.g. `https://<tenant>/app/patch-tracker`)
* Becomes accessible to everyone with workspace access
* Is ready to **Pin to Sidebar** for ops teams

## What you've built

| Section | Audience |
| - | - |
| Headline gauge | IT leadership |
| Metric cards | Patch operations lead |
| Pie chart by OS | Platform team |
| Drilldown table | Help desk / IT support |
| Owner outreach button | Help desk (one-click notify) |
| PDF export | Weekly report sender |

## Customisation ideas

* **Patch criticality SLA** — *"Add an SLA column showing days remaining before each overdue device breaches our patch SLA (Critical: 7 days, High: 14, Medium: 30)"*
* **Reboot wave campaigns** — *"Add a 'Reboot wave' tag and a button to mark a device as in-wave; show wave-level progress"*
* **Auto-create tickets** — *"For devices >30 days overdue, auto-create a Jira ticket every Monday via our Jira Webhook Action"*
* **Per-region escalation** — *"Add a 'Critical patches > 21 days' Slack notification per region channel via Webhook Actions"*

## See also

> [card] [Patch management (pre-built)](https://docs.dimension.io/pre-built-apps/patch-management.md)
>
> A pre-built patch tracking app you can import and customise

> [card] [Actions](https://docs.dimension.io/actions.md)
>
> Email / Webhook Actions for owner notifications

> [card] [Connect Your Data](https://docs.dimension.io/connect-your-data.md)
>
> Wire up Intune / Jamf / SCCM as a Data Feed

> [card] [Studio AI Composer](https://docs.dimension.io/studio/ai-composer.md)
>
> Reference for the Composer interaction patterns


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.