Shift planning
A drag-and-drop weekly scheduler with recurring patterns, swap requests, and conflict warnings.
The shift planner is a weekly calendar grid. Each row is a staff member, each column is a day. Shifts are dragged from a side palette of templates, or built from scratch with a click-and-drag. The planner respects per-section staffing requirements and certification gates — a person without the required cert can't be assigned to a shift that needs it.
Recurring patterns
Most restaurants run a stable weekly pattern. Save a week as a recurring template and apply it forward as far as needed. Templates can be edited centrally — changes propagate to all future occurrences but never to the past.
Availability windows
Staff mark availability per day from the mobile app — open, preferred, or unavailable. The planner color-codes the grid against these preferences, so a manager filling a slot can see at a glance who actually wants to take it.
Shift swaps
Two paths exist: the dedicated swap dialog and the chat-driven flow. From the mobile app, a staff member taps a shift, picks Request swap, and the request appears in the team chat as a structured swap card. Eligible coworkers (same role, no conflict, certifications satisfied) can claim it; the manager gets a one-tap approval prompt. Approved swaps update the planner automatically and land in chat_shift_swaps as an audit trail.
Conflict warnings
The planner highlights four classes of conflict inline:
- Double-booked staff — the same person on two overlapping shifts.
- Under-staffed sections — a section with reservations but no assigned server.
- Missing certifications — a member without a required cert (HACCP, alcohol license, etc.) on a section that requires it.
- Legal hour limits — exceeds configured maximums per day or per week. Defaults follow German Arbeitszeitgesetz; custom limits per workspace.
Discard draft if you want to back out before publishing.