---
title: "Scheduling"
description: "From \"what does a day at this clinic look like\" to the roster on the wall — the scheduling module, end to end."
---

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

# Scheduling

Scheduling is three layers, each feeding the next: **Scheduling setup** describes what
a day at this clinic can look like (shift types, duties, day types, the weekly
rhythm); each month, **planning** applies the rhythm to real dates, handles the
exceptions, and generates the month's roster as a Draft; and the **roster workspace** is where people are
placed and the month published — what staff see is that wall, never a roster still Draft.

1. [Reading the roster & your availability](/en/docs/scheduling/shifts/) — everyone's
   side: reading the board, declaring days you can't work or would rather not.
2. [Planning & filling the roster](/en/docs/scheduling/planner/) — the scheduler's
   workbench: generate the month, fill the gaps, publish.
3. [Scheduling setup: shift types, duties & day types](/en/docs/scheduling/vocabulary/)
   — the vocabulary you define once and reference every month.

> **One fact that runs through everything**
>
> The system *blocks* "cannot schedule" and *flags* "shouldn't schedule": hard conflicts
> are refused, advisory ones are surfaced for you to judge, and overrides require a
> typed reason. Short of a hard conflict, the scheduler is the final judge — the system
> just states the consequences first.

Source: https://peoplematter.app/en/docs/scheduling/index.mdx
