PMF Survey: Product-market fit survey automatically appears after 5 days for user feedback collection with smart display logic (dismissable with 7-day snooze, permanently hidden after completion)
Improved
Session Scheduling: Calendar invite toggle now defaults to ON when scheduling coaching sessions, making it easier to add sessions to your calendar
Announcement Banner: Enhanced mobile responsiveness with better layout stacking, centered content, and optimized spacing for smaller screens
2025-10-22
v2.1.0
Added
New Onboarding Coaching Model: We improved our onboarding coaching model based on user feedback.
Feature Interest Collection: Added onboarding step to collect user interest in upcoming features (Daily Check-Ins and Weekly Reviews) with feedback modal for capturing user needs and use cases
Global Loading Screen: Branded loading screen during initial app load that prevents content flashing and ensures smooth transitions between authentication states, onboarding, and main app with theme-aware spinner animation
Delete Account: Added ability to delete your account from the mobile app with complete data cleanup
Onboarding Analysis Script: Added internal tool to analyze onboarding sessions and extract user problems/intentions using AI
Mastra Integration: Added experimental Mastra app for exploring AI agent workflows and tools
TanStack Query Helpers: Added utility functions for safe nested object updates in Firestore and optimistic cache updates
Blog Section: Dedicated blog section to share content.
Improved
Coaching Message Scheduling: Enhanced daily message scheduling to properly calculate and update nextCoachingMessageDue timestamp when users enable or modify coaching message settings across account page and daily check-in card
Feedback Analysis: Improved AI-powered feedback processing with explicit JSON response formatting and robust fallback handling for malformed responses
Mobile Onboarding: First name step now automatically skips when OAuth providers (Apple/Google Sign In) provide the user's name, improving Apple App Store compliance and user experience
Mobile Account Management: Enhanced account settings with action sheet menu for iOS and improved account portal access
Mobile Authentication: Added error handling and recovery flow for authentication issues with reset and retry functionality
Feedback Route Tracking: Feedback submissions now include the page where they originated for better issue diagnosis
Feedback Processing: Switched Linear feedback analysis to Claude Haiku 4.5 for faster response times while maintaining quality
Account Page: Complete redesign with modern card-based UI for commitments and scheduled sessions, improved visual hierarchy, and streamlined management actions
Commitments Overview: Enhanced commitment cards with better status indicators, streak tracking, and intuitive delete actions
Scheduled Sessions: Improved session cards with cancel/delete functionality, better date displays, and clearer session status
Mobile App Experience: Enhanced mobile app to match the quality and features of the web app including improved onboarding, better settings screen, and more reliable authentication
Onboarding Design: Refreshed onboarding screens with modern design, better visual hierarchy, and smoother progress indicators
Intention Input Validation: Added helpful toast notifications when users pause typing with invalid input, guiding them to provide at least 2 words
App Performance: Faster app loading times and more responsive interactions throughout the app
Subscription Management: More reliable subscription status updates and eliminated duplicate notifications
Feedback Submission: Instant response when submitting feedback (down from 3-5 second wait)
Coaching Messages: Redesigned message generation system (V2) for more focused, actionable daily messages that are easier to respond to
Coach Responses: Your coach now provides more concise, focused responses (1-2 sentences + one question) for better conversation flow
Personalized Coaching: All coaching messages now use your first name for a more personal experience
AI Quality: Upgraded to latest AI model (Claude Sonnet 4.5) for higher quality coaching responses
Documentation: Enhanced AGENTS.md with comprehensive structure and streamlined technical documentation across the repository
Code Organization: Reorganized lib folder with clear client/server separation for better maintainability
Data Safety: All mutations now use deep merge to prevent accidental data loss when updating nested objects
Fixed
Privacy & Terms Pages: Added support page link to footer navigation for better accessibility
Date Calculations: Fixed bug where "due today" items were incorrectly showing as "due tomorrow" by comparing calendar dates instead of time differences
Session Management: Added ability to cancel and permanently delete scheduled coaching sessions
Account Deletion: Fixed account deletion to properly cancel and remove RevenueCat subscriptions, ensuring complete data cleanup and compliance
Journal Typing Bug: Fixed race condition where characters would disappear when typing in journal entries due to TanStack Query invalidation overwriting local editor state
Onboarding Issues: Resolved critical bug that could cause onboarding to generate multiple times simultaneously
Meditation Generation: Fixed issue where meditation generation could get stuck in an infinite loop
Mobile Subscription: Fixed subscription status not syncing properly on mobile devices
Mobile Authentication: Resolved various login and session issues on mobile app
Scheduled Sessions: Fixed display issues with scheduled coaching sessions in mobile app
Settings Screen: Fixed bugs in mobile settings screen
Commitment Emails: Fixed formatting issues with commitment check-in cards in emails
Text Display: Improved text wrapping in coaching messages for better readability
Message Formatting: Better formatting and styling of coaching messages on mobile
Feedback System: In-app feedback collection with automated Linear issue creation, AI-generated titles, priority assessment, and Loops email integration
Account Management: Complete account deletion and reset onboarding features with comprehensive data cleanup and RevenueCat integration
Onboarding Enhancements: Privacy mode indicator, reactivation flow for abandoned journeys (24hr inactivity), journey progress tracking with status and currentDay fields
Referral Tracking: Campaign attribution via ?ref= URL parameter with 90-day persistence for measuring marketing effectiveness
Mobile User Tracking: Automatic lastSeenAt tracking with 5-minute debouncing for both web and mobile users
Analytics Package: Type-safe PostHog integration with AnalyticsProvider and comprehensive 588-line documentation
Developer Tools: Async coach simulator for testing message generation, environment setup scripts, and comprehensive setup guides
Onboarding Quality: Upgraded to Claude Sonnet 4.5, restructured coaching prompts for concise responses, personalized messaging with first names
Coaching Architecture: Complete refactor to service-oriented design with RouterService, MessageService, CoachingSessionService, and SchedulerService
Development Experience: Disabled TanStack Query caching in dev mode, improved commitment scheduler security, markdown to TypeScript prompt loading
Analytics: Enhanced referral tracking with source property, moved signup tracking to onboarding page load for reliability
Type Safety & Security: Comprehensive Firestore security rules, database indexes, mobile type consistency with shared-types
Fixed
Critical Bugs: Onboarding triggered 4x simultaneously, infinite meditation generation loop, mobile subscription sync in production
Subscription Flow: Duplicate toast notifications, trial signup loop checking isPro + isInTrial states, timezone update triggering on every auth change
User Experience: Missing email on signup, mobile markdown rendering, coaching message text wrapping, email card parsing for commitments
Analytics: PostHog identify calls now properly update user properties during onboarding (firstname in FirstNameStep via mutation success callback, isOnboardingCompleted in completeOnboarding function)
Build & Deploy: Expo EAS build dependencies, package management peer conflicts, proper .npmrc and .easignore configuration
2025-10-06
v2.0.0
Added
Landing Page: Professional public landing page with hero section, features bento grid, how-it-works steps, CTA, FAQ, testimonials, and team letter
Meditation System: AI-powered custom meditation generation with dedicated onboarding step, interactive time selector (5-25 minutes), and seamless integration
Onboarding Experience: Complete redesign with intention-setting, coaching preferences, personalized AI coaching session, post-coaching insights, and 5-day guided experience plans
Onboarding Journaling Prompt: New prompt type for onboarding journaling activities with personalized reflection questions
RevenueCat Integration: Subscription management with 7-day free trial and monthly Pro subscription flow
Email Notifications: Web users can now receive coaching messages via email as an alternative to mobile push notifications, with automatic fallback strategy (push → email) and user-configurable toggle in account settings
RevenueCat Webhook: Automatic subscription sync from RevenueCat to Firestore via webhooks for reliable server-side enforcement
Feature Gating System: Implemented comprehensive subscription-based feature gating with daily coaching message limits (3/day for free, unlimited for pro)
Shared Analytics Package: Created @reflecta/analytics workspace package with type-safe PostHog integration for both Next.js and Expo apps
Analytics Provider: Automatic user identification and lifecycle management with AnalyticsProvider in Next.js app
Analytics Events: Added 10 new event types for comprehensive user journey tracking including onboarding steps, subscription changes, coaching interactions, and journaling activities
Analytics Documentation: Comprehensive 588-line guide covering setup, usage, troubleshooting, and best practices
Async Coach Simulator: Development tool for testing coaching message generation at different stages without waiting for actual days to pass
Async Coaching Documentation: Complete 273-line documentation for async coach simulator tool with testing scenarios and troubleshooting guide
Mintlify Documentation: Migrated all documentation to Mintlify platform with enhanced navigation, search, and interactive components
Monorepo Architecture: Centralized @reflecta/shared-types package for consistent type definitions across Next.js and Expo apps with legacy compatibility
Setup Automation: Cross-platform setup scripts (macOS, Linux, Windows) with automated development environment configuration
Branch Protection: Automated GitHub workflow enforcement and validation checks
Branding Assets: Custom favicon and app icons with SVG and PNG formats for cross-platform support and PWA compatibility
Account Settings Page: Comprehensive settings interface with theme preferences, coaching message controls, active commitments, and scheduled sessions overview
Last Seen Tracking: Automatic user activity tracking with lastSeenAt timestamp updates on visibility changes
Subscription Context: Centralized subscription state management with SubscriptionProvider replacing old hook-based approach
Usage Display: Real-time coaching message usage tracking with automatic daily resets and formatted countdown timers
Upgrade Modals: Beautiful modal UI for pro feature upgrades and subscription cancellation confirmations
Session Time Tracking: Automatic tracking of active time invested in the app with minute-accurate session monitoring
Theme Management: Seamless dark/light/system theme switching with Firestore sync and localStorage caching for instant theme application
Firebase Authentication Logging: Comprehensive debug logging throughout authentication flow for easier troubleshooting
Firestore Security Rules: Added comprehensive security rules for onboardingJourneys collection with proper user ownership validation
Mobile Config Type: Added shared type definition for mobile app configuration including forced update feature with minimum required version
Improved
Landing Page Design: Redesigned with modern animations including typing effects, scroll-based text reveals, parallax hero image, and auto-rotating feature tabs with progress indicators and hover-pause functionality for enhanced visual appeal and user control
Landing Page Performance: Optimized all scroll event listeners with requestAnimationFrame and passive listeners, eliminated render mutations, and added font display swap to prevent layout shifts
Landing Page Accessibility: Added semantic HTML structure, ARIA attributes for feature tabs and FAQ accordions, improved keyboard navigation support, and added cursor-pointer classes throughout for better UX
Landing Page Content: Updated hero image to mockup screenshot, refined messaging with 7-day free trial mention, improved company logo sizing, and enhanced CTA consistency
App Structure: Reorganized routes under /app path with improved authentication middleware separating public and protected areas
Authentication Flow: Cleaned up redirect logic and improved auth-related hooks for better reliability
Sign Up Tracking: Moved analytics tracking from FirstNameStep to onboarding page load for more reliable signup event capture with 10-minute detection window
Type Safety: Standardized uid/userId/id naming conventions and resolved all TypeScript compilation errors
Type Schema System: Restructured shared-types package with version control, clear Firestore mappings, and comprehensive inline documentation for all data models
Firebase Integration: Fixed collection naming (UserInsights → userInsights) and security rules for production readiness
Onboarding Flow: Modular component architecture with debounced auto-save, input validation, improved user data collection, and fixed session initialization race conditions with proper dependency tracking and state management
Onboarding Message Personalization: Enhanced all onboarding prompts to use user's first name when available for more personal coaching experience
LLM Model Upgrade: Upgraded onboarding message generation from Claude Sonnet 4 to Claude Sonnet 4.5 for improved quality
Prompt Loading: Converted onboarding experience generation prompt from markdown file to TypeScript constant for improved reliability and faster load times
Meditation Generation: Streamlined API with consistent 2-minute duration for onboarding and enhanced error handling, optimized with pre-generated audio segments reducing latency and cost by 80%
Coaching System: AI model tuned for onboarding conversations with automatic session completion and better UX
Coaching System Architecture: Complete refactor with separated concerns - useCoachingChat for streaming, useEnsureCoachingSession for session lifecycle, and modular UI components
Coaching Session Management: Streamlined session creation with automatic document initialization and proper auth handling
Coaching Message Streaming: Local-first optimistic UI with real-time message streaming and automatic Firestore sync
Coaching API: Added server-side usage limit enforcement with proper error responses for exceeded limits
Code Organization: Moved coaching components to dedicated /coaching folder for better maintainability
Account Page: Enhanced with usage statistics, subscription management, and pro upgrade prompts
Hook Architecture: Refactored useSubscription to use Context API, preventing multiple RevenueCat SDK instances
Documentation Structure: Reorganized docs with clear sections for team rules, setup guides, and platform-specific documentation
Shared Package Build: Added postinstall script to automatically build shared packages after dependency installation
Development Experience: Comprehensive SETUP.md guide, improved README, and automated setup commands
Analytics Event Tracking: Implemented comprehensive analytics event tracking throughout Next.js app including onboarding steps (coaching started/finished, meditation completed/skipped, onboarding completed), subscription changes (trial started, plan upgraded, plan canceled), coaching interactions (user messages sent), and journaling activities (page created/updated)
Onboarding Data Generation: Enhanced LLM retry logic to wrap both API call and JSON parsing in retry mechanism, improving resilience against malformed responses with better error logging
Analytics User Identification: Added isOnboardingCompleted trait to PostHog identify calls for email notification segmentation and improved user lifecycle tracking across both web and native platforms
RevenueCat Integration: Fixed entitlement identifier to match dashboard configuration, added pro offering helper utility, implemented proper user logout and session cleanup to prevent subscription data leakage between users, and added tab visibility-based subscription status refresh
Trial Signup Flow: Removed free version option from onboarding to require payment information upfront, maintaining 7-day free trial but ensuring higher-intent user signups with transparent messaging about trial and billing
Fixed
Firebase Security Rules: Resolved 'false for list' error in account page
Onboarding Redirect: Fixed post-onboarding redirect to properly route users to app
Onboarding Session: Fixed session ID handling to prevent React events from being passed as IDs