Files
Krow-workspace/docs/DEMO_PLAN.md

348 lines
11 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🎬 KROW Workforce Platform — Feature Demo Plan
**Version:** 1.0
**Date:** February 2, 2026
**Audience:** Business Stakeholders, Customer Engineers, Sales Teams
**Duration:** 25-30 minutes
---
## 1⃣ Demo Overview
### Purpose
This demo showcases the progress of the milestone 3.
- **For Businesses (Client App):** One-time shift creation, worker management, real-time coverage tracking
- **For Workers (Staff App):** Easy access to available shifts, clock-in and profile management
- **Complete Workflow:** From shift posting and worker check-in and completion/
### Estimated Demo Duration
**25-30 minutes**
---
## 2⃣ Demo Environment Setup
### Required Test Accounts
**Client Account (Business User):**
- Email: `google_payment@gmail.com`
- Password: `Demo2026!`
- Client Name: "Google Payements"
**Staff Account (Worker):**
- Phone: `+1 (555) 123-4567`
- OTP Code: `123456` (demo mode)
- Name: "Alex Martinez"
### Prerequisites
1. ✅ Both apps installed on demo devices (or simulators)
2. ✅ Network connection stable
3. ✅ Seed data is ready to be populated
- the database should be empty.
- remove unnecessary users from the firebase authetication.
### Pre-Demo Data Seeding
Tracked in :
- https://github.com/Oloodi/krow-workforce/issues/345
- This should be easily populated and de-populated by the demonstrator to show the empty states in the apps.
- At the start the database should be empty.
---
## 3⃣ Demo Flows
### Demo 0: Show Empty Database
**Purpose:** Demonstrate the starting point before any data exists
**Action:** Show the empty database in Firebase console
---
### Demo 1: Register Business & Show Empty States (Client App)
**Purpose:** Show the client onboarding experience and empty states
**Steps:**
1. Open Client App → Tap "Create Account"
2. Enter business details (email, password, company name)
3. Complete sign up and navigate to home page
4. **Point out:** Empty dashboard, no orders, no workers, clean slate
---
### Demo 2: Register Staff & Show Empty States (Staff App)
**Purpose:** Show the worker onboarding experience and empty states
**Steps:**
1. Open Staff App → Tap "Sign Up"
2. Enter phone number and verify with OTP code
3. Complete profile setup wizard (skip detailed sections for speed)
4. Navigate to home page
5. **Point out:** Empty shifts list, no available work yet
---
> **🔄 PAUSE HERE:** Populate the database with seed data (run seeding script)
---
### Demo 3: Client Logs In with Existing Account
**Purpose:** Show the sign-in experience for returning users
**Screen:** Get Started → Sign In
**Steps:**
1. Restart Client App
2. Tap "Sign In" button
3. Enter credentials:
- Email: `google_payment@gmail.com`
- Password: `Demo2026!`
4. Tap "Sign In"
---
### Demo 4: Client Views Populated Dashboard
**Purpose:** Show how the client app displays active operations
**Steps:**
1. After signing in, observe the home screen
2. Navigate through populated sections:
- Home: Coverage stats, upcoming shifts
- Orders: Posted shifts with workers assigned
- Coverage: Real-time worker status
**What to Notice:**
- Coverage percentage for today's shifts
- Workers checked in vs. needed
- Late workers alerts
- Today's estimated labor cost
---
> **EXPLAIN**: The main demo flow which is the order creation and acceptance flow.
> ```
>Client Posts Shift [O1]
>
>*Vendor Accepts the Shift (This Part is missing for now)* [O2]
>
>Worker Searches for a Shift [O3]
>
>Worker Applies [O4]
>
>Confirmation [O5]
>
>Worker Checks In [O6]
>
>Shift Completed [O7]
>
>Payment [O8]
>```
---
### Demo 5: Client Creates New Order - [O1]
**Purpose:** Walk through the shift creation process
**Screen:** Orders Tab → "Post" button
**Action:** Create a new shift for upcoming event
**What to Fill:**
- Order name: "Spring Gala 2026"
- Date: [Select upcoming date]
- Location: [Select existing hub]
- Add position: Server, Count: 3, Hours: 5PM-11PM
---
### Demo 6: Client Views Order Details
**Purpose:** Show detailed shift information and worker assignments
**Screen:** Orders Tab → Tap on any order card
**Action:** Expand order to see full details
**What to Notice:**
- Event name and location
- Roles needed (e.g., "2 Servers")
- Clock in/out times
- Estimated cost
- Coverage percentage bar
**Why It Matters:** Complete transparency on staffing status before the event
---
### Demo 7: Staff Logs In with Existing Account
**Purpose:** Show the worker sign-in experience
**Screen:** Get Started → Sign In with Phone
**Steps:**
1. Restart the staff app.
2. Enter phone number: `5551234567`
3. Tap "Send Code"
4. Enter OTP: `123456`
---
### Demo 8: Staff Views Home Dashboard
**Purpose:** Show worker's personalized dashboard
**What to Notice:**
- Today's Shifts section (confirmed shifts for today)
- Tomorrow's Shifts section
---
### Demo 9: Staff Browses Available Shifts - [O3]
**Purpose:** Show how workers discover and view available work
**Screen:** Shifts → "Find Work"
**Action:** Browse the list of available shifts
**What to Notice:**
- List of shifts matching worker skills
- Hourly rate prominently displayed
- Role requirements (e.g., "Bartender - Spring Gala")
- Date, time, and duration
---
### Demo 10: Staff Applies for Shift - [O4]
**Purpose:** Show the application process from worker side
**Screen:** Shift Details → "Apply Now" button
**Steps:**
1. Tap on an available shift to view details
2. Review business name, location, pay, requirements
3. Tap "Book Shift"
4. See instant confirmation
---
### Demo 11: Staff Views Confirmed Shifts - [O5]
**Purpose:** Show worker's shift management interface
**Screen:** Shifts Tab → "My Shifts"
**Action:** Review calendar view of confirmed shifts
**What to Notice:**
- Week-by-week calendar navigation
- Color-coded status (Confirmed, Pending, Completed)
- Quick access to shift details and directions
---
### Demo 12: Client Monitors Coverage Dashboard
**Purpose:** Show real-time worker tracking capabilities
**Screen:** Client App → Coverage Tab
**Action:** Navigate to Coverage, select today's date
**What to Notice:**
- Live worker status (Checked In, En Route, Late, Not Arrived)
- Color-coded status badges (green, yellow, red)
- Worker contact information
- Real-time updates as workers check in
**Why It Matters:** Know exactly who's on-site and who's missing before event starts
---
### Demo 13: Staff Checks In to Shift (Day of Event) - [O6]
**Purpose:** Demonstrate the check-in process
**Screen:** Home or My Shifts → Shift Card → "Check In" button
**Action:** Simulate checking in to an active shift
**What to Notice:**
- Timestamp automatically recorded
- Status changes to "Checked In" with green indicator
---
### Demo 14: Client Sees Check-In Update - [O6]
**Purpose:** Show cross-app interaction and real-time updates
**Screen:** Client App → Coverage Tab
**Action:** Show the worker's status updating from "Not Arrived" to "Checked In"
**What to Notice:**
- Status update
- Green "Checked In" badge appears
- Check-in time displayed
- Coverage percentage updates automatically
> Go to the home page and come back to the coverage page to update the data.
---
## 8⃣ Common Questions & Talking Points
### **Q: How do you handle background checks and compliance?**
**A:** Workers upload required documents (certifications, IDs) during onboarding. The system flags expired or missing documents and prevents booking until resolved. Businesses can configure required certifications per role.
---
### **Q: What if a worker no-shows?**
**A:** The platform tracks reliability scores based on check-ins and cancellations. Businesses can filter workers by reliability when posting shifts. Repeated no-shows result in account warnings.
---
### **Q: Can we message workers before or during shifts?**
**A:** *(Current State: Not yet implemented in demo)* Messaging is on the roadmap. Currently, workers can access business contact info from shift details.
---
### **Q: How does payment work?**
**A:** Workers link bank accounts during onboarding. Hours are automatically calculated from check-in/check-out times. Payment is processed weekly via ACH transfer. *(Note: Payment processing integration is in progress)*
---
### **Q: What happens if we need to cancel a shift?**
**A:** Businesses can cancel shifts from the Orders screen. Workers receive cancellation notifications. The system tracks cancellation history for both businesses and workers.
---
### **Q: Can workers see their upcoming schedule?**
**A:** Yes, the "My Shifts" tab shows a week-by-week calendar view of all confirmed shifts. Workers can export to phone calendar.
---
### **Q: Do you support recurring shifts or long-term placements?**
**A:** *(Current State: One-time shifts implemented)* Recurring and permanent shifts are on the roadmap. Current demo focuses on one-time event staffing.
---
### **Q: How do you verify worker skills?**
**A:** During onboarding, workers select their experience levels and upload relevant certificates (ServSafe, TIPS, etc.). Businesses can require certifications per role.
---
### **Q: What if GPS check-in doesn't work (indoor venue)?**
**A:** *(Current State: GPS-based check-in)* Backup QR code check-in is in development. Businesses can also manually verify check-ins from Coverage dashboard.
---
### **Q: Can we integrate with our existing payroll system?**
**A:** *(Future Feature)* API integration with payroll systems like ADP, Gusto is planned. Current export options include CSV for manual import.
---
### **Q: What data do businesses see about workers?**
**A:** Businesses see worker name, photo, ratings, reliability score, certifications, and shift history. Personal details (address, SSN) remain private.
---
### **Q: Is there a web dashboard for businesses?**
**A:** *(Current State: Mobile-first)* Web admin dashboard is in development. Current demo shows mobile apps for both businesses and workers.
---
### **Q: What's the pricing model?**
**A:** *(Sales Team Question)* Refer to sales team for pricing. Platform fee is typically percentage of labor cost or flat per-worker rate.
---
## 9⃣ Current Limitations (Be Transparent)
1. **Messaging:** In-app chat between businesses and workers is not yet available
2. **Payment Processing:** ACH/payment gateway integration is in progress
3. **Recurring Shifts:** Only one-time shifts are currently implemented
4. **Web Dashboard:** Admin web interface is under development
5. **Shift Swapping:** Workers cannot yet swap shifts with each other
6. **Push Notifications:** Some real-time notifications may have delays
7. **Offline Mode:** Apps require internet connection for most features
---
**Document Version:** 1.0
**Last Updated:** February 2, 2026
**Maintained By:** Product & Solutions Engineering Team
**Feedback:** Submit updates via GitHub Issues or Slack #demo-playbook