VibeQueue

User Stories
(Customer)

As a customer, I want to request a song that will influence the atmosphere.

Acceptance:
  • Customer can search and select a song
  • Song is validated against business filters
  • Request is added to the queue
  • UI confirms submission

As a customer, I want to pay to prioritize my request so that it plays sooner.

Acceptance:
  • Customer can choose priority option
  • Payment is processed successfully
  • Request is placed higher in queue
  • UI shows updated position

As a customer, I want to browse songs so that I can easily find music I like.

Acceptance:
  • Songs are displayed by genre/vibe
  • Search functionality is available
  • Results load quickly
  • Only allowed songs are shown

As a customer, I want to access the system via QR code so that I can quickly interact without downloading anything.

Acceptance:
  • QR code opens web interface
  • No login required (or simple session)
  • Interface loads correctly on mobile
  • User can immediately browse songs

User Stories
(Owner/Staff)

As a business owner, I want to filter songs by genre and mood so that the music matches my brand.

Acceptance:
  • Owner can set genre/mood restrictions
  • Explicit content can be blocked
  • Filters apply to all requests
  • Disallowed songs are rejected automatically

As a business owner, I want to monitor revenue from song requests so that I can track business value.

Acceptance:
  • Revenue dashboard is available
  • Payments are recorded per request
  • Data updates in real time
  • Owner can view totals and trends

As a staff member, I want to override or remove songs so that I can manage inappropriate or disruptive requests.

Acceptance:
  • Staff can remove songs from queue
  • Queue updates immediately
  • Action is reflected in UI
  • Removed songs do not play

As a staff member, I want to view and manage the queue so that I can maintain a smooth music experience.

Acceptance:
  • Staff can view full queue
  • Staff can reorder songs if needed
  • Queue updates in real time
  • Changes are reflected for all users