# Team Attendance block

> Compact team attendance calendar card with status filter and bar-chart stat rows

Team attendance widget: month Select, status filter DropdownMenu, single-date Calendar with today highlight, AvatarGroup, and Attendance/Absences/Delayed rows with bar sparklines. ReUI Frame, Badge; shadcn Calendar, Avatar, Chart. Presence tracker.

- Type: Pro block
- Category: [Schedule](https://web.dev.reui.io/blocks/application/schedule.md)
- Page: https://web.dev.reui.io/blocks/application/schedule/schedule-5
- MCP: `get_block("schedule-5")`
- Built with: Avatar, Badge, Button, Calendar, Chart, Dropdown Menu, Frame, Item, Popover, Select, Separator
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

A team presence card with present, absent and delayed counts as bar sparklines and a status filter over the avatar stack

## Agent notes

- `TEAM_MEMBERS` and `STAT_CHART_DATA` are static and ignore the picked day; load attendance for `selectedDate` from your data
- The status filter only narrows the avatar stack; `PRESENT`, `ABSENT` and `DELAYED` in the stat rows stay fixed counts
- `DEMO_REFERENCE_DATE` pins today to 9 June 2026 for the highlight and starting month; swap in the real date

## When not to use

- The data is a plain bar series over time with no calendar or team: use [Chart](https://web.dev.reui.io/components/chart.md) (`get_component("chart")`)
- Appointments are booked into day or week columns with double book alerts: use [Appointment Calendar](https://web.dev.reui.io/blocks/solutions/bookings/solution-bookings-2.md) (`get_block("solution-bookings-2")`)

## Third-party libraries

- Recharts v3: [API reference](https://recharts.github.io/en-US/api/), [docs](https://recharts.github.io/en-US/guide/getting-started/)
- React DayPicker v9: [API reference](https://daypicker.dev/v9/api), [docs](https://daypicker.dev/v9/start), through shadcn Calendar

## Install

```bash
npx shadcn@latest add @reui/schedule-5
```

## About Schedule blocks

### When to use

- Booking a session or setting up a meeting: a day, a time slot, a duration and a confirm step
- A month view card with the picked day's events and attendees, or a team's attendance counts
- Creating a scheduled event with members and files, or an event's detail card with an RSVP

### When not to use

- A full page week or month grid where people drag, resize and create events: use the [Event Calendar blocks](https://web.dev.reui.io/blocks/application/event-calendar.md)
- A plain day or range field in a form, with no slots, agenda or booking card: use [Calendar](https://web.dev.reui.io/components/calendar.md) (`get_component("calendar")`)
- A drop zone for attachments on its own, with no booking or meeting fields: use [File Upload](https://web.dev.reui.io/components/file-upload.md) (`get_component("file-upload")`)

### Agent notes

- `Schedule` takes no props and saves or sends nothing; add a callback to hand the picked day, time or form values to your app
- Each `Schedule` caps its width with a max-w class on its root `Frame`, and page.tsx centers it with p-10 md:p-20; drop both inside your 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.
