Back to Work

Mobile App / UX Case Study

Unsomnia

An AI-powered dream journaling app designed for the 3 AM moment, when you're half-asleep and typing is the last thing you want to do.

Role

UX Designer

Duration

Oct 2025 – Dec 2025

Platform

iOS Mobile App

Tools

Figma, FigJam

Unsomnia Journal Main Screen Unsomnia Recording Active Screen Unsomnia Insights Screen Unsomnia Entity Detail Screen

Overview

Most dreams vanish within five minutes of waking. Unsomnia catches them before they disappear.

Users speak their dream aloud. The app transcribes on-device, extracts entities automatically, and surfaces patterns over time whilst keeping everything private.

The Problem

Existing apps require manual typing and tagging, which creates friction at the worst possible moment. Users lose details, skip journaling entirely, or tag inconsistently. Cloud-based transcription adds a trust barrier for content as personal as dreams.

Research & Discovery

I conducted 42 user interviews with active dream journalers and lucid dreamers recruited from communities including r/LucidDreaming (615K+ members), synthesised through an affinity diagram and journey map in FigJam.

68% of participants forgot their dream before opening an app. Another notable barrier was the effort of manual logging itself. Typing while half-asleep is demanding enough that many users consistently chose not to journal at all. Voice recording removes both barriers entirely.

Six pain points shaped every design decision:

  • Typing delays cost users their dreams. When typing feels like too much effort while drowsy, users delay or skip recording entirely, and the dream is gone.
  • No understanding of dream meaning. Users wanted insight, not just a log.
  • Manual tagging is inconsistent. The same theme tagged differently each session makes pattern tracking meaningless.
  • High friction kills habit. Every extra step is a reason to go back to sleep.
  • Existing apps feel clinical. Built for productivity, not a half-asleep state.
  • No pattern visibility. Spotting recurring themes requires significant manual effort.
Finding Design Response
Typing is hard at 3 AM Voice-first recording, zero text input required
Dreams forgotten in minutes One tap to record, no account required upfront
No pattern understanding Automated AI entity extraction + Insights tab
Inconsistent manual tagging Five-category colour-coded system, auto-applied
High friction kills habit Sub-30 second recording flow, frictionless onboarding

Design Process

Wireframes

Wireframing started with one constraint: every screen must be usable at 3 AM with minimal cognitive load. This meant large touch targets, zero text input, and a visual hierarchy guiding the eye to a single action per screen.

Journal wireframe Recording wireframe Insights wireframe

Visual Design

The visual language was built around one reality: this app is used in the dark. A deep indigo palette reduces eye strain. Soft purple accents remain visible without being harsh. Typography pairs Plus Jakarta Sans for headings with DM Sans for body text, chosen for clarity at small mobile sizes.

Unsomnia Onboarding Screen Unsomnia Journal Main Screen

Design System

Design system built for dark-first, low-cognition use: deep indigo base, soft purple accents, five-colour entity palette consistent across tags, charts, and detail screens, Plus Jakarta Sans/DM Sans type scale for arm's-length readability, 40px minimum touch targets, and a reusable component library spanning waveforms, entity tags, dream cards, and mood selectors.

Core Features

Voice-First Recording

One tap to start. The idle state shows a calm waveform and a prominent mic button. Once recording begins, the screen transitions to a live transcription view with an animated waveform and recording controls.

Unsomnia Recording Active Screen

Post-Capture Analysis

After saving, users can optionally tag the dream type (lucid, recurring, nightmare, prophetic, sleep paralysis), rate vividness on a 1 to 5 scale, assign a mood, and tag entity categories. None of this is required. The AI handles entity extraction and sentiment analysis automatically, but giving users the option improves accuracy and builds engagement with their dream data over time.

Unsomnia Post-Capture Screen

AI Entity Extraction & Patterns

The app categorises dream entities into five types, each with a distinct colour and icon:

Category Colour Example
People Purple Sarah
Animals Orange Butterflies
Places Teal Childhood Home
Themes Cyan Flying
Objects Pink Book

This colour system is consistent everywhere: entity lists, dream details, post-capture tagging, and sentiment charts. Users learn to associate colour with category without reading labels. Each dream also receives a sentiment colour visible as a dot on journal cards.

Unsomnia Entity Detail Screen Unsomnia Insights Screen

User Flow

The flow is optimised for one goal: wake, record, sleep. New users can record their first dream immediately with no account required. The signup prompt appears only after the dream is safely captured.

Journal Empty State

1

Recording Idle State

2

Recording Active State

3

Post-Capture Screen

4

Journal Main Screen

5

Four onboarding screens communicate the problem, solution, trust factor, and value. A Skip option lets users dive straight in.

Onboarding Screen 1 Onboarding Screen 2 Onboarding Screen 3 Onboarding Screen 4

Informal User Testing

Three users (two active lucid dreamers, one casual dream journaler) tested the prototype. All completed the record-save flow without guidance, confirming the voice-first approach felt intuitive. The entity colour system was understood without explanation. Users validated key design decisions: tap-to-edit transcript lines, segment-level undo granularity, and the paused state playback option. One user initially missed the Save button in the top right, suggesting it may need more visual weight.

Intended Impact & Status

By reducing the recording flow to under 30 seconds, Unsomnia turns dream journaling from an occasional effort into a sustainable daily habit.

The MVP targets App Store submission by end of March 2026 with launch in early April.

615K+

Potential users in r/LucidDreaming

$49/yr

Target subscription

Apr '26

Launch target

Key Learnings

Context is everything

Designing for 3 AM required rethinking standard UX patterns. A half-asleep user needs larger targets, fewer choices, zero typing, and instant feedback. The constraint made the design better.

Privacy as a feature

For content as personal as dreams, privacy isn't a compliance checkbox. It's the reason users will trust the app with their most vulnerable thoughts.

Automation enables consistency

Manual tagging will always be inconsistent. By automating entity extraction with a learnable five-category colour system, Unsomnia ensures reliable pattern tracking without requiring effort from the user.

Want to learn more about this project?