DashboardSupportWelcome

👤 USER DOCS

Getting Started

Daily Operations

Shift Workspace & TasksPre-Shift SetupLine-Up CardsShift ReportsForms

Staff & Locations

Staff SchedulingManaging Locations

Oversight

Manager ReportsAnalyticsPre-Shift & Compliance

Incidents & Feedback

Incident ReportingAnonymous FeedbackMessages & Announcements

AI & Settings

AI ChatgearApp Settings

Administration

Dashboard & OnboardingAdmin

⚙️ DEVELOPER DOCS

Getting Started

Getting StartedDevelopmentDeployment Guide

Architecture

Architecture OverviewData FlowArchitecture Decision Records

Core Domain

Core DomainDatabase ReferenceLocations DomainAuth & RBACScheduling DomainReports DomainIncidents DomainNotifications DomainAudit Log & OptimizationDesign Audit Findings

Frontend

Frontend ArchitectureFormsLoading SkeletonsComponentsPWA & NotificationsimageScreenshots

API Reference

API Reference

Endpoints

POS Sales APIOptimization Data APISchedule Shifts APIEmployee Export APIReports APIIncidents APIAI Chat APIPush Notifications APIWebhooks APICron API

Contributing

ContributingcodeCode Examples

Security

Security & Compliance
Danvas IconDanvas
Danvas IconDanvas

Line-Up Cards

Pre-shift briefings with itemized line-up items and staff acknowledgment tracking

Danvas Line-Up Cards let managers create pre-shift briefings that staff can view and acknowledge. Each card contains itemized line-up items — VIP guests, events, 86'd items, specials, and general notes — alongside optional sales goals and service focus.

How It Works

  1. Manager navigates to Line-Up Cards
  2. Clicks "New Line-Up Card"
  3. Selects location, date, and shift (Lunch / Dinner / Late Night)
  4. Sets optional sales goal and service focus
  5. Adds line-up items with typed categories
  6. Publishes — card appears on the Line-Up page for all staff

Item Types

TypeIconUse Case
VIP Guest⭐Notable guests, regulars, VIP reservations
Event / Reservation📅Private parties, large bookings
86'd Item🚫Menu items that are sold out or unavailable
Special / Feature✨Chef specials, promotional items
General Note📝General briefing information

Staff Acknowledgment

Staff view line-up cards relevant to their location and shift. Each staff member can acknowledge a card, creating a digital record that they've read the briefing.

  • Acknowledged cards show a green checkmark
  • Admins see who has and hasn't acknowledged each card
  • Acknowledgments are tracked per user per card (unique constraint)

Database Schema

lineup_cards

ColumnTypeDescription
idtextPrimary key, UUIDv4
team_idtextTenant identifier (Clerk org ID)
location_idtext

Pre-Shift Setup

Daily operational planning and staff briefings

Shift Reports

End-of-shift reporting for staff members

On this page

How It WorksItem TypesStaff AcknowledgmentDatabase Schemalineup_cardslineup_card_itemslineup_card_acknowledgmentsServer ActionsRelated Files
FK → locations
datetextISO date string (YYYY-MM-DD)
shifttextLunch, Dinner, or Late Night
created_bytextFK → users.clerkId
sales_goalnumeric(10,2)Optional sales target
service_focustextOptional service focus notes
manager_notestextAdditional manager notes
created_attimestampAuto-set on creation
updated_attimestampAuto-updated on edit

Unique constraint on (team_id, location_id, date, shift) — only one card per location per shift per day.

lineup_card_items

ColumnTypeDescription
idtextPrimary key, UUIDv4
card_idtextFK → lineup_cards (cascade delete)
typetextvip, event, 86d, special, or note
contenttextItem description (max 500 chars)
sort_orderintegerDisplay order

lineup_card_acknowledgments

ColumnTypeDescription
idtextPrimary key, UUIDv4
card_idtextFK → lineup_cards (cascade delete)
user_idtextFK → users.clerkId (cascade delete)
acknowledged_attimestampAuto-set on acknowledgment

Unique constraint on (card_id, user_id) — each user can acknowledge a card once.

Server Actions

ActionAuthDescription
getLineupCardsAuthenticatedList cards from the last 14 days
getLineupCardDetailAuthenticatedGet full card with items and acknowledgments
createLineupCardAdminCreate a new card with items
updateLineupCardAdminUpdate card metadata and replace items
deleteLineupCardAdminDelete a card and its items
acknowledgeLineupCardAuthenticatedAcknowledge a card (onConflictDoNothing)

All queries are scoped by teamId for multi-tenant isolation.

Related Files

FilePurpose
apps/app/(authenticated)/lineup/page.tsxLine-Up list page
apps/app/(authenticated)/lineup/[id]/page.tsxCard detail page
apps/app/(authenticated)/lineup/new/page.tsxNew card form page
apps/app/(authenticated)/lineup/new/lineup-form.tsxCard creation form component
apps/app/(authenticated)/lineup/actions.tsAll server actions
packages/database/src/schema/lineup.tsDatabase schema and relations