Back to browse
Somnia – a dream journal that locks 2 minutes after your alarm fires

Somnia – a dream journal that locks 2 minutes after your alarm fires

by SushanKKsdfsdf·Mar 7, 2026·2 points·0 comments

AI Analysis

●●●BangerSolve My ProblemBig BrainNiche Gem

Server-enforced 2-minute dream capture window based on REM neuroscience — miss it, lose it forever.

Strengths
  • Core mechanic (timed window + server-side enforcement) solves a real neuroscience problem most journaling apps ignore.
  • Clean UX: notification-to-capture-screen flow respects the actual 2-minute biological constraint, no friction.
  • Privacy-first architecture with row-level security, encrypted transport, and export option — stands out in journaling category.
Weaknesses
  • Monetization unclear; pricing page exists but tier structure and CAC/retention math unverified for sustainability.
  • Relies entirely on users waking up and acting within 2 minutes — adoption may hit ceiling if many miss windows regularly.
Category
Target Audience

People who want to capture dreams before they fade; sleep science enthusiasts; journal keepers.

Similar To

Day One · Daylio · Journey

Post Description

I kept waking up from vivid dreams and losing them before I could write anything down.

The neuroscience is clear — during REM sleep, norepinephrine (the neurotransmitter that consolidates memories) is almost completely suppressed. Dreams exist only in working memory when you wake up. The moment your brain starts processing new inputs the memory gets displaced. The window is roughly 2 minutes.

So I built around that window instead of ignoring it.

How it works: - Set your alarm inside Somnia - When it fires, a server-side entry window opens - Capture screen launches directly from notification - Type the first word and the timer stops - Miss the 2 minutes and that day locks forever - No override, no extension, no exceptions

The window enforcement is server-side only — entry_windows table in Postgres with window_expires_at set when the alarm fires, validated on every API call. The client timer is purely visual. You can't cheat it by killing the app or going offline.

Stack: Next.js 14 App Router, Supabase, Tiptap, web-push + VAPID, GitHub Actions cron (Vercel Hobby blocks minute-level crons so GitHub Actions calls /api/cron/fire-alarms every minute), Vercel.

Free tier available. Happy to answer questions about the implementation or the product.

Similar Projects

AI/ML●●Solid

Dreamvibe – AI dream journal that maps dreams to 17 brain regions

It turns raw, sleepy prose into structured outputs — Jungian archetypes, emotion buckets, AI art and an interactive 17-region brain map — and ships a sensible mobile UX (voice capture + Whisper) which is exactly what a dream app needs. Clever idea and a lot of moving parts, but the neuroscience-to-text mapping feels speculative; I want to see methodology, validation and sample analyses before trusting the brain-activation claims.

Niche GemWizardrySlick
jdiamond_
104mo ago
Finance●●Solid

Open-source trading journal in Ruby on Rails

This is a pragmatic, multi-tenant RoR app that covers the basics you'd expect—firms/broker scopes, account configs, trades and payouts—and includes convenient ops notes (bin/setup, Heroku deploy). It feels like a useful baseline for fintech teams rather than a polished end product: screenshots and deploy scripts make it easy to spin up, but there’s little sign of broker integrations, import/export workflows, access controls or audit details that matter for real trading ops.

Niche GemShip It
puuush
103mo ago