Skip to main content

Epic 1 - User Flow

Overview

Epic 1 follows a manual admin-driven workflow where users submit text requests and admins manually process them to generate audio.

Access Rules:

  • Public Access (No Login): Landing page content, voice gallery, audio playback
  • 🔒 Login Required (Users): Submitting text-to-audio requests
  • 🔒 Login Required (Admins): Backoffice dashboard, request management

Manual Processing Workflow

Key Difference from Automated Systems:

  • Users submit text requests and receive confirmation emails
  • Admins manually process requests and upload audio files
  • System sends 3 automated emails: confirmation (on submit), processing (when admin starts), and completion (when audio is ready)

User Journey: Text-to-Audio Request


Admin Journey: Request Processing


Combined Flow: User + Admin


Detailed Flow Steps

User Flow

Step 1: Landing & Login (Public Access)

Page: Landing/Login Page

  1. User visits MicDots website
  2. Landing page displays (no authentication required)
  3. User can view features and marketing content
  4. User decides to create audio request

Authentication:

  • User enters email and password
  • System validates credentials
  • If valid: User authenticated, redirect to voice gallery
  • If invalid: Show error message

Step 2: Voice Selection (Public Access)

Page: Voice Gallery

  1. User views voice gallery (no login required)
  2. User listens to voice samples
  3. User browses available voices
  4. When ready to submit, user proceeds to login/submission

Step 3: Text Submission

Page: Request Submission Form

  1. User enters text (up to 1000 characters)
  2. Character counter displays remaining characters
  3. Selected voice model is shown
  4. User clicks "Submit Request"

What Happens:

  • Backend creates request with status "pending"
  • Backend sends confirmation email to user
  • Frontend shows success message: "We will generate your audio for you"
  • User sees confirmation that request was received

Step 4: Waiting Period

What User Experiences:

  1. User receives confirmation email: "Your request has been received"
  2. User waits for admin to process (no action required)
  3. User receives processing email: "We're working on your audio"
  4. User waits for completion
  5. User receives completion email: "Your audio is ready!" with playback link

Typical Wait Time: 1-24 hours (depends on admin availability)


Step 5: Audio Access

Page: My RequestsQR Playback Page

How to Access

  1. User checks "My Requests" page for completion status
  2. User sees request status changed to "Completed"
  3. User clicks playback link from request details
  4. Browser opens playback page
  5. Audio plays automatically

Admin Flow

Step 1: Admin Login

Page: Landing/Login Page

  1. Admin visits MicDots
  2. Admin enters admin credentials (separate from user accounts)
  3. System validates admin permissions
  4. Admin redirected to backoffice dashboard

Step 2: View Requests

Page: Admin Backoffice

  1. Admin sees dashboard with request statistics
  2. Admin views list of pending requests
  3. List shows:
    • Request ID
    • User name
    • Text preview (first 50 chars)
    • Voice model
    • Status
    • Created date
  4. Admin selects request to process

Step 3: Process Request

Page: Admin Request Details

  1. Admin views full request details:
    • Complete text
    • Selected voice model
    • User information
    • Current status
  2. Admin clicks "Update Status to Processing"
  3. System sends email to user (status update)
  4. Admin prepares to obtain audio from external source

Step 4: Obtain Audio (External)

Outside the System:

  1. Admin uses any external audio generation service or tool
  2. Admin copies text from request
  3. Admin generates/creates audio file
  4. Admin downloads or exports MP3 file
  5. Admin saves file locally

Why External: To reduce development time, automatic audio generation is deferred to future releases. Admins can use any audio source - the system doesn't track or require specific services.


Step 5: Upload Audio

Page: Admin Request Details

  1. Admin clicks "Upload Audio" button
  2. Admin selects MP3 file from computer
  3. Admin clicks "Upload"
  4. System processes upload:
    • Uploads audio to S3
    • Updates request status to "completed"
    • Sends completion email to user with playback link
  5. Admin sees success message
  6. Admin moves to next pending request

Email Notification Flow

Email 1: Confirmation (Immediate)

Trigger: User submits text request

Subject: "Your MicDots request has been received"

Content:

  • "Thank you for your request"
  • Request ID
  • Text preview (first 100 chars)
  • Voice model selected
  • "We will start processing your audio soon"
  • Estimated time: "Usually within 24 hours"

Email 2: Processing (Admin Triggered)

Trigger: Admin updates status to "processing"

Subject: "Your audio is being generated"

Content:

  • "We're working on your audio"
  • Request ID
  • Voice model
  • "You'll receive another email when it's ready"

Email 3: Completion (Deferred to Epic 2)

Not in Epic 1

This email is NOT sent in Epic 1. Users must check "My Requests" page to see when audio is completed.

Deferred to: Epic 2

Trigger: Admin uploads audio (status changes to "completed")

Subject: "Your audio is ready!"

Content (Epic 2):

  • "Your audio has been generated successfully"
  • Playback Link: https://micdots.com/play/{slug} (clickable)
  • Instructions:
    • "Click the link above to listen now"
  • Request details (text preview, voice model)

Public Audio Playback

Playback Journey (No Login Required)

Page: QR Playback Page

Steps:

  1. User clicks playback link from completion email or "My Requests" page
  2. Browser opens playback URL: https://micdots.com/play/{{slug}}
  3. Page loads (no login required)
  4. Audio plays automatically
  5. User listens to audio
  6. User can replay or close page

Key Features:

  • ✅ No authentication required
  • ✅ Auto-play on page load
  • ✅ Mobile-optimized
  • ✅ Simple interface (just audio player)
  • ✅ Permanent access (until manually deleted)

Flow Summary

User Perspective

What Users Do:

  1. Browse voice gallery (no login required)
  2. Log in (email + password)
  3. Select voice model
  4. Submit text
  5. Wait for emails

What Users Receive (Epic 1):

  • Confirmation email (immediate)
  • Processing email (when admin starts)
  • Completion email (when audio is ready) with playback link

Total User Actions: 5 clicks (Browse → Login → Select Voice → Submit → Done)


Admin Perspective

What Admins Do:

  1. Log in to backoffice
  2. View pending requests
  3. Update status to "processing"
  4. Obtain audio from external source
  5. Upload audio file
  6. System handles rest automatically

Total Admin Actions: 5 actions per request


Request Status Flow

pending → processing → done

Status Definitions:

StatusMeaningEmail Sent (Epic 1)Admin Action
pendingRequest received, waiting✅ ConfirmationNone yet
processingAdmin is working on it✅ ProcessingUpdate status
completedAudio ready❌ None (Epic 2)Upload audio

Access Summary

Public Access (No Login)

  • ✅ Landing page
  • ✅ Marketing content
  • ✅ Voice gallery
  • ✅ Audio playback page

User Access (Login Required)

  • ✅ Request submission form
  • ✅ Receiving emails
  • ✅ View personal requests

Admin Access (Admin Login Required)

  • ✅ Backoffice dashboard
  • ✅ Request list
  • ✅ Request details
  • ✅ Status updates
  • ✅ Audio upload

User-Facing Pages:

  1. Landing/Login Page - Entry point
  2. Request Submission Form - Text entry and voice selection
  3. QR Playback Page - Public audio playback

Admin-Facing Pages: 5. Admin Backoffice - Dashboard 6. Admin Request Details - Request processing

Technical Documentation: 7. Authentication - Login system 8. Email Notifications - Email system 9. Request Management API - Backend API


Success Metrics

User Experience

  • Request submission takes < 30 seconds
  • Users understand they will receive 2 emails (confirmation, processing)
  • Confirmation email received within 1 minute
  • Processing email received when admin starts
  • Users know to check "My Requests" for completion status
  • Audio playback works on first click

Admin Experience

  • Admin can view pending requests easily
  • Status updates take < 10 seconds
  • Audio upload completes successfully
  • Emails sent automatically on submit and processing status change

Technical Performance

  • Email delivery rate > 99%
  • Audio playback works on all devices
  • Page load time < 2 seconds
  • S3 upload success rate > 99%