Changelog
What we've been shipping
We move fast on small things and slow on big things.
Pitch-readiness sweep
Apr 27, 2026
- •Prime page now requires an explicit ‘Begin Prime’ tap before audio plays
- •Soundscape engine no longer clicks when switching options; ‘Fire’ sounds like fire
- •Visual reinforcement is visible in the player view with a fade-in entrance
- •Personalised first-session CTA on the dashboard for new users
- •Mobile sticky header is logo + 44px menu only; controls live in the slide-out
- •Celebratory toast on session completion (streak + XP + achievements)
Internationalisation pass
Apr 26, 2026
- •Privacy controls fully translated EN/ES
- •Practice, library, breathwork, onboarding, settings page scaffolding wired to next-intl
- •Player UI scaffolding translated EN/ES (164 keys)
Validation-launch foundations
Apr 25, 2026
- •BILLING_MODE switch lets us run validation without charging cards
- •Public /pricing page in EUR with Premium €9.99 + Pro €19.99
- •Programs €19/29/49 tiles wired to early-access intent capture
- •Admin funnel view: 7-day / 30-day event counts, willingness split, conversion rates
- •<PremiumGate /> preview-with-CTA pattern across journal / sleep stories / cinematic
Email + DB-driven mail provider
Apr 24, 2026
- •SMTP / Resend selectable from the admin panel; ‘Send test email’ stamps the active provider
- •Cascade delete on AdminPasswordResetRequirement
- •AbortController timeouts on OpenAI / Ollama AI generation
- •ESLint: a11y + security + unused-var rules elevated
PWA polish + favicon
Apr 23, 2026
- •Browser favicon wired through metadata.icons (was falling back to a generic glyph)
- •Install prompt for Android Chrome + ‘Add to Home Screen’ hint for iOS Safari
- •Service worker update toast on new deploys
- •Global iOS audio unlock on the first session-link click