Back to Conversational & Ritual System

Features & Journeys

Step-by-step workflows with detailed diagrams showing what is asked and saved at each stage.


Core Features

Voice-First Content Creation

Users create personalized content (affirmations, guided meditations, or rituals) through guided conversation, not forms. The system uses natural language dialogue to understand intent, gather context, and generate customized practices.

Content Library

Users save content and return to practice them regularly. No gamification—users return for intrinsic value. Unlimited replay (practice is free, no credit consumption).

Marketplace

Facilitators/creators publish ritual packs. Users discover, purchase, and subscribe to creator content.


Content Creation Workflows

Affirmation Creation

flowchart TD Start([User Selects
Create Affirmation]) --> Greeting[System Greets] Greeting --> Intent[Ask: What do you want
to affirm or strengthen?] Intent --> IntentResp[User Response:
e.g., 'I want confidence'] IntentResp --> Statements[Ask: What specific statements
feel true for you?] Statements --> StatementsResp[User Provides
3-7 statements] StatementsResp --> Voice[Ask: Your voice or
selected voice?] Voice --> VoiceResp[User Chooses Voice] VoiceResp --> Review[System Presents Summary] Review --> Confirm{User Confirms?} Confirm -->|Yes| Generate[Generate Affirmation
0.5 credits] Confirm -->|No| Modify[Return to Statements] Modify --> Statements Generate --> Complete[Affirmation Ready] Complete --> Save[Save to Library]

Step-by-Step: What is Asked and Saved

Step System Asks User Provides System Saves
1. Greeting "Let's create an affirmation together. What would you like to affirm or strengthen?" Intent (e.g., "I want confidence") intent: string
2. Statements "What specific statements feel true for you? Share 3-7 statements in present tense." 3-7 affirmation statements statements: string[]
3. Voice "Would you like to use your voice or a selected voice?" Voice preference voice_id: uuid, voice_type: 'user' | 'standard'
4. Review Presents summary: intent, statements, voice Confirmation or modification request Updates saved data if modified
5. Generation N/A (background process) N/A content_text: text, audio_url: string, audio_duration: integer, content_type: 'affirmation', credit_cost: 0.5

Guided Meditation Creation

flowchart TD Start([User Selects
Create Meditation]) --> Greeting[System Greets] Greeting --> Intent[Ask: What state do you
want to access?] Intent --> IntentResp[User Response:
e.g., 'I need calm'] IntentResp --> Duration[Ask: How long?
5-20 minutes] Duration --> DurationResp[User Chooses Duration] DurationResp --> Practice[Ask: What practice type?
Breath work, body scan, etc.] Practice --> PracticeResp[User Chooses Practice] PracticeResp --> Imagery[Ask: Any specific imagery
or visualization?] Imagery --> ImageryResp[User Provides
or skips] ImageryResp --> Voice[Ask: Voice preference] Voice --> VoiceResp[User Chooses Voice] VoiceResp --> Review[System Presents Summary] Review --> Confirm{User Confirms?} Confirm -->|Yes| Generate[Generate Meditation
1 credit] Confirm -->|No| Modify[Return to Duration] Modify --> Duration Generate --> Complete[Meditation Ready] Complete --> Save[Save to Library]

Step-by-Step: What is Asked and Saved

Step System Asks User Provides System Saves
1. Greeting "Let's create a guided meditation. What state would you like to access?" Intent (e.g., "I need calm", "I want clarity") intent: string
2. Duration "How long would you like this meditation? (5-20 minutes)" Duration preference duration_preference: integer
3. Practice Type "What practice type? Breath work, body scanning, visualization, or combination?" Practice type selection practice_type: 'breath-work' | 'body-scanning' | 'visualization' | 'combination'
4. Imagery "Any specific imagery or visualization you'd like included?" Imagery description or skip imagery: string | null
5. Voice "Voice preference?" Voice selection voice_id: uuid, voice_type: 'user' | 'standard'
6. Review Presents summary: intent, duration, practice type, imagery, voice Confirmation or modification Updates saved data if modified
7. Generation N/A (background process) N/A content_text: text, structure: jsonb (grounding, breath work, attention direction, imagery, closure), audio_url: string, audio_duration: integer, content_type: 'guided_meditation', credit_cost: 1

Ritual Creation

flowchart TD Start([User Selects
Create Ritual]) --> Greeting[System Greets] Greeting --> Intent[Ask: What is changing
in your life?] Intent --> IntentResp[User Response:
e.g., 'I'm transitioning careers'] IntentResp --> Context[Ask: Why does this matter?
What's the deeper meaning?] Context --> ContextResp[User Shares Context
and Meaning] ContextResp --> Duration[Ask: How long?
10-30 minutes] Duration --> DurationResp[User Chooses Duration] DurationResp --> Practice[Ask: What practice type?
Breath work, body scan, etc.] Practice --> PracticeResp[User Chooses Practice] PracticeResp --> Identity[Ask: What identity-level
language resonates?] Identity --> IdentityResp[User Provides
Identity Statements] IdentityResp --> Emotional[Ask: What emotional state
do you want to anchor?] Emotional --> EmotionalResp[User Describes
Emotional Goal] EmotionalResp --> Voice[Ask: Voice preference] Voice --> VoiceResp[User Chooses Voice] VoiceResp --> Review[System Presents Summary] Review --> Confirm{User Confirms?} Confirm -->|Yes| Generate[Generate Ritual
1 credit] Confirm -->|No| Modify[Return to Context] Modify --> Context Generate --> Complete[Ritual Ready] Complete --> Save[Save to Library]

Step-by-Step: What is Asked and Saved

Step System Asks User Provides System Saves
1. Greeting "Let's create a ritual together. What is changing in your life right now?" Intent describing change (e.g., "I'm transitioning careers", "I'm healing from a breakup") intent: string
2. Context "Why does this matter to you? What's the deeper meaning or significance?" Context and meaning (personalized story) context: jsonb {why_matters: string, deeper_meaning: string, life_moment: string}
3. Duration "How long would you like this ritual? (10-30 minutes)" Duration preference duration_preference: integer
4. Practice Type "What practice type? Breath work, body scanning, visualization, or combination?" Practice type selection practice_type: 'breath-work' | 'body-scanning' | 'visualization' | 'combination'
5. Identity Language "What identity-level language resonates with you? How do you want to speak to yourself?" Identity statements (present-tense, personalized) identity_statements: string[]
6. Emotional Anchoring "What emotional state do you want to anchor? What do you want to feel?" Emotional goal description emotional_goal: string
7. Voice "Voice preference?" Voice selection voice_id: uuid, voice_type: 'user' | 'standard' | 'premium'
8. Review Presents complete summary: intent, context, duration, practice type, identity statements, emotional goal, voice Confirmation or modification Updates saved data if modified
9. Generation N/A (background process) N/A content_text: text, structure: jsonb {grounding, context, core_affirmations, emotional_anchoring, closure}, context: jsonb (full creation context), audio_url: string, audio_duration: integer, content_type: 'ritual', credit_cost: 1

Return Loop Workflow

sequenceDiagram participant User participant Library participant Audio Service participant CDN User->>Library: Open library Library->>User: Display saved content
(by type, tags, folders) User->>Library: Select content item Library->>User: Show details
(title, duration, tags, created date) User->>Library: Start practice Library->>Audio Service: Request audio URL Audio Service->>CDN: Get pre-signed URL CDN-->>Audio Service: Return audio URL Audio Service-->>Library: Return URL Library->>User: Start playback User->>Library: Pause/Resume (optional) User->>Library: Complete practice Library->>Library: Record practice event
(last_played_at, play_count++) Library->>User: Return to library

Step-by-Step: What is Asked and Saved

Step System Action User Action System Saves
1. Library View Displays saved content organized by type, tags, or folders User browses and selects content N/A (read-only)
2. Content Selection Shows content details: title, duration, tags, created date User reviews and selects "Start Practice" N/A (read-only)
3. Audio Request Requests pre-signed URL from CDN N/A N/A (temporary URL)
4. Playback Starts audio playback User listens, can pause/resume N/A (no save during playback)
5. Completion Records practice completion User completes practice last_played_at: timestamp, play_count: integer++

Marketplace Workflow

sequenceDiagram participant User participant Catalog participant Payment participant Stripe participant Library User->>Catalog: Browse packs
(search/filter) Catalog->>User: Display pack results User->>Catalog: View pack details Catalog->>User: Show pack info
(description, creator, rituals, price) User->>Payment: Purchase/Subscribe Payment->>Stripe: Process payment Stripe-->>Payment: Payment confirmed Payment->>Library: Grant access to pack Library->>Library: Add pack rituals
to user library Library->>User: Pack available User->>Library: Practice pack rituals

Step-by-Step: What is Asked and Saved

Step System Asks/Shows User Provides System Saves
1. Browse Displays pack catalog with search/filter options User searches or browses N/A (read-only)
2. Pack Details Shows pack description, creator info, rituals included, price, reviews User reviews pack N/A (read-only)
3. Purchase Decision Shows pricing options (one-time or subscription) User selects purchase/subscribe N/A (decision only)
4. Payment Redirects to Stripe checkout User completes payment payment_id: uuid, payment_status: 'completed', pack_access: granted
5. Access Grant Grants access to pack rituals N/A user_pack_access: jsonb {pack_id: uuid, access_granted_at: timestamp, ritual_ids: uuid[]}
6. Library Update Adds pack rituals to user library N/A Updates content items with pack_id: uuid, marks as accessible

User Journeys

New User Onboarding

journey title New User Onboarding Journey section Discovery Discovers waQup: 3: User Reads about voice-first rituals: 4: User Decides to try: 5: User section First Experience Opens app: 4: User Sees simple interface: 5: User Chooses content type: 4: User Creates first content: 5: User Practices content: 5: User Feels value: 5: User section Engagement Returns to practice: 5: User Creates more content: 4: User Explores marketplace: 4: User Builds habit: 5: User

Content Creation Progression

journey title User Progression Through Content Types section Starting Point Creates affirmation: 5: User Practices daily: 5: User Feels resistance: 3: User section Deepening Uses guided meditation: 5: User Accesses deeper state: 5: User Feels ready for change: 5: User section Encoding Creates ritual: 5: User Experiences identity shift: 5: User Integrates change: 5: User

Progression Logic:

  • Affirmations repeat (daily, lightweight)
  • Meditations open (when resistance appears)
  • Rituals encode (when something truly matters)

Journey Principles

Trust-Based

  • No manipulation or dark patterns
  • Transparent pricing and terms
  • Clear value proposition
  • Honest communication

User Autonomy

  • Users control their practice
  • No pressure or dependency
  • Easy exit (export, delete)
  • Respect for user agency

Calm & Supportive

  • No urgency or FOMO
  • No comparison or competition
  • Supportive, not pushy
  • Respects user's pace