# Approval Workflow block

> Horizontal scrolling approval workflow timeline with file attachments, ratings, and owner avatars

Horizontal scrollable timeline tracking approval steps, each with a phase status badge, attachment download, star rating, action button, and owner avatar. ReUI Timeline, Badge, Rating with shadcn Avatar, Button, ButtonGroup. For approval flows.

- Type: Pro block
- Category: [Timeline](https://web.dev.reui.io/blocks/application/timeline.md)
- Page: https://web.dev.reui.io/blocks/application/timeline/timeline-6
- Docs (Base UI): https://web.dev.reui.io/docs/components/base/timeline.md
- Docs (Radix UI): https://web.dev.reui.io/docs/components/radix/timeline.md
- MCP: `get_block("timeline-6")`
- Built with: Avatar, Badge, Button, Button Group, Rating, Timeline
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

A sideways run of 8 approval phases in a snap scrolling area, with check, play or circle nodes, ETA times and a named action per step

## Agent notes

- Replace `workflowSteps` in data.ts; `owner` must match a `name` in that step's `team` or the avatar falls back to initials
- The `actionLabel` button and the attachment and download buttons have no handler, so each only renders
- Node color and icon come from `status` through `statusIndicatorClassName` and `WorkflowStatusIcon`, not from `defaultValue`

## When not to use

- Milestones that stack vertically with expandable detail cards: use [Customer Activation](https://web.dev.reui.io/blocks/application/timeline/timeline-1.md) (`get_block("timeline-1")`)
- A compact vertical list of steps with owners and star ratings: use [Account Rollout](https://web.dev.reui.io/blocks/application/timeline/timeline-2.md) (`get_block("timeline-2")`)

## Third-party libraries

- Base UI v1: [API reference](https://base-ui.com/react/components), [docs](https://base-ui.com/react/overview/quick-start), [llms.txt](https://base-ui.com/llms.txt)

## Install

```bash
npx shadcn@latest add @reui/timeline-6
```

## About Timeline blocks

### When to use

- A dated activity feed of who did what, placed on the page, in a dropdown or in a side panel
- Onboarding milestones and approval steps marked completed, current or still pending
- Release notes and version history laid out as a dated changelog

### When not to use

- A bare list of dated steps to compose and style from scratch, with nothing prebuilt: use [Timeline](https://web.dev.reui.io/components/timeline.md) (`get_component("timeline")`)
- One record's detail or an edit form in a side panel, with no event history: use the [Sheet blocks](https://web.dev.reui.io/blocks/application/sheet.md)
- A day grouped audit log of access events with type filters and CSV export: use the [Users blocks](https://web.dev.reui.io/blocks/solutions/users.md)

### Agent notes

- Each `Timeline` is uncontrolled through `defaultValue`, and every `TimelineItem` whose `step` is at or below it gets `data-completed`
- Each page.tsx centers the root in a padded `min-h-svh` wrapper; render the root component alone inside your own layout

Every ReUI item has a twin like this one; the index is https://web.dev.reui.io/llms.txt. Agents with the ReUI MCP (https://web.dev.reui.io/docs/mcp) get the same guidance from the getters named above.
