Starting Line
Comprehensive guest management and registration system with workflow automation
Overview
Starting Line is a guest management system that automatically creates and tracks guest records from form submissions. It features a sophisticated Next Action workflow system for managing visitor registrations, waivers, and tour conversions.
Key Features
Automatic Guest Creation
- Automatically creates guest records when configured forms are submitted
- Maps form fields to guest registration fields
- Tracks submission metadata (time, IP, user agent)
- Supports QR code generation for location-based registration
Guest Management Dashboard
-
Statistics Cards:
- Total Guests
- New Guests
- Active Tours
- Membership conversions
- PIF Membership
- Pass Pack
- No Purchase
-
Advanced Filtering:
- Multi-location selector
- Date range filter with timezone awareness
- Search by name, email, or location
- Status-based tabs for quick access
-
Real-time Display:
- Color-coded status badges
- Assigned staff member tracking
- Toured status indicators
- Inline action buttons
Next Action Workflow System
The app uses a sophisticated workflow that controls how guests move through the registration lifecycle:
Workflow Rules:
- Status and Tour fields are read-only
- Next Action dropdown controls all status transitions
- Automatic audit trail for every change
Available Actions by Status:
- New: Tour, Membership, PIF Membership, Pass Pack, No Purchase
- Active Tour: Membership, PIF Membership, Pass Pack, No Purchase
- Membership/PIF/Pass Pack: Tour (if not previously toured)
- No Purchase: Reset to New
Special Actions:
- Tour Action: Opens dialog to assign staff member and sets status to "active-tour"
- Reset to New: Available in terminal states, completely resets guest status
Status Management
Status options with color coding:
- new: Initial registration (blue)
- active-tour: Currently touring (amber)
- membership: Converted to member (emerald)
- pif-membership: Pay It Forward membership (violet)
- pass-pack: Purchased pass pack (sky)
- no-purchase: Completed without purchase (orange)
Notes & Comments System
- Quick access via message icon button
- Shows previous notes for context
- CMD/CTRL+Enter keyboard shortcut
- Automatic notes for status changes and staff assignments
ABC Fitness Integration
- Automatic member data fetching using Gym Sales ID
- Agreement management and tracking
- Location-based connection settings
- View agreements modal for membership status guests
Data Export
- CSV export with developer access
- Respects all active filters
- Includes comprehensive guest data
- Proper timezone handling
Database Models
Guest Model
model Guest {
id String @id @default(cuid())
appId String
tenantId String
firstName String
lastName String
email String
phone String?
locationId String?
visitTime DateTime
waiverSigned Boolean @default(false)
status String @default("new")
previouslyToured Boolean @default(false)
assignedToUserId String?
smsOptedIn Boolean @default(false)
gymSalesId String?
notes GuestNote[]
abcMember AbcMember[]
}Configuration
Installation
- Navigate to Apps section
- Select "Starting Line"
- Configure during installation:
- Select a form to track
- Map form fields to guest fields
Field Mapping
The app supports custom field mapping with auto-detection for common patterns:
- First Name: first_name, firstname, first, fname
- Last Name: last_name, lastname, last, lname
- Email: email, email_address, e_mail
- Phone: phone, phone_number, mobile, cell
- Location: location, address, place, venue
- Signature: signature, sign, waiver_signature
Use Cases
Primary Use Case: Guest Registration & Tour Management
- Create a "Guest Registration" form with required fields
- Install Starting Line app and configure field mappings
- Guests submit registration forms (directly or via QR code)
- Staff manages workflow through Next Actions
- Automatic audit trail tracks all changes
Secondary Use Cases
- Event Registration tracking
- Visitor Management workflows
- Trial Membership conversions
- Tour Scheduling with staff assignment
Routes
Main Routes
/app/:tenant/apps/starting-line- Guest dashboard with filters and tabs/app/:tenant/apps/starting-line/:id- Guest detail page
Best Practices
Workflow Management
- Use Next Actions consistently for status changes
- Always assign staff when starting tours
- Add notes for context on unusual situations
- Review "No Purchase" guests for follow-up opportunities
Data Hygiene
- Review and clean up old guest records periodically
- Use notes to maintain interaction history
- Keep staff assignments current
- Track tour completions accurately
Date Filtering & Timezone Handling
- Automatic timezone detection using user/tenant settings
- Default shows "today" in user's local timezone
- All dates stored in UTC for consistency
- Supports US, Canadian, and Mexican timezones
Troubleshooting
Guests not being created from form submissions
- Verify form ID/slug matches configuration
- Check that app is active
- Ensure form is published
- Verify field mappings are correct
Next Actions not appearing
- Check current guest status
- Verify previouslyToured flag for membership statuses
- Ensure user has proper permissions
ABC Fitness data not fetching
- Verify location has ABC Fitness connection configured
- Check that gymSalesItem contains valid abcfin_id
- Ensure ABC Fitness API credentials are valid

