🌱 CONCEPT PROJECT · 2026

Daily Bloom

A habit tracker that doesn't guilt-trip you.
Most habit apps punish you for slipping — broken streaks, red marks, guilt. Daily Bloom reframes habit-building as something you grow: gentle streaks, mood check-ins, and a calendar that rewards showing up over being perfect.
ROLE
UX/UI Designer
TIMELINE
3 weeks
TOOLS
Figma, FigJam
PLATFORM
iOS · Mobile
SCOPE
End-to-end
01

Overview


The problem

Habit trackers are everywhere, yet most people abandon them within weeks. The common thread is that they're built around streaks and perfection. Miss one day and the streak resets to zero, the calendar fills with red, and the app starts to feel like a source of shame rather than support. For people already managing anxiety, ADHD, or burnout, that guilt loop is the exact reason they quit.

The goal

Design a mobile habit tracker that keeps people coming back by being kind. It should make progress visible and motivating without weaponising streaks — celebrating consistency, forgiving slips, and treating each small action as a win worth noticing.

My role

Sole UX/UI designer — owning research, information architecture, interaction design, visual design, and the design system, end to end.

Responsibilities

Competitive teardown, user interviews, persona and journey mapping, wireflows, low- and high-fidelity design, a usability study, and a reusable component library.

02

Understanding the user


Research approach

I started with a competitive teardown of six popular habit apps, then ran five 30-minute interviews with people who had tried — and mostly quit — habit trackers. I wanted to understand the emotional moment of giving up, not just the feature gaps. A short survey (32 responses) helped me sense-check how common those feelings were.

6
apps audited
5
user interviews
32
survey responses
78%
quit over broken streaks

What surprised me

I assumed people wanted more powerful tracking — richer stats, smarter reminders. Interviews said the opposite. The people who quit didn't want more data; they wanted permission to be imperfect. The streak counter, meant to motivate, was the single most common reason they felt like a failure and deleted the app.

Pain points
Pain 1

Streak shame

Resetting to zero after one missed day felt like erasing weeks of effort — so people stopped trying altogether.

Pain 2

All-or-nothing

Habits were marked simply done or not done, ignoring partial effort like 3 of 5 glasses of water.

Pain 3

Nagging reminders

Push notifications felt like a manager checking in, not a friend — guilt-laden and easy to mute.

Pain 4

No emotional context

Apps tracked behaviour but never asked how you felt, missing why habits actually slip.

Persona
🌷
Maya, 27
Junior teacher · Manchester
“I don't need an app to tell me I failed. I already know.”
GOALS

Build a consistent morning routine, drink more water, and read before bed — without feeling monitored.

FRUSTRATIONS

Has downloaded four habit apps. Each one made her feel worse the moment she missed a day, so she deleted them.

MOTIVATIONS

Responds to encouragement and visible-but-gentle progress. Wants to feel proud, not policed.

User journey map
Mapping Maya's week with a typical streak-based app revealed exactly where the emotional drop-off happens.
Mon
😊
Signs up
Hopeful
Tue
😄
All habits hit
Proud
Wed
😟
Misses one
Anxious
Thu
😣
Streak resets
Defeated
Fri
😞
Guilt on open
Avoidant
Sat
🫥
Deletes app
Relieved
💡

Design opportunity: the collapse happens on Wednesday — the first miss. If the app reframes that moment as “you're still growing” instead of “you failed,” the whole journey changes.

03

Starting the design


User flow
Before any pixels, I mapped the core loop — and deliberately designed the “miss” path to lead somewhere supportive rather than punishing.
Open app Today screen Tap a habit Mark progress Gentle celebration Evening reflection
Low-fidelity wireframes
I sketched the key screens as greyscale wireframes to lock structure before visual design. The focus: a calm Today list, a forgiving habit detail view, and a calendar that shows shades of progress rather than pass/fail.
Onboarding wireframe
Onboarding
Today home wireframe
Today (Home)
Add habit wireframe
Add Habit
Calendar wireframe
Calendar
Reflection wireframe
Reflection
Usability study
I tested an interactive low-fi prototype with 5 participants who self-identified as “lapsed habit-app users,” using a moderated, task-based approach.
TYPE
Moderated, remote
PARTICIPANTS
5 lapsed users
LENGTH
25 min each
TASKS
4 core flows
GOALS
Identify pain points causing user drop-off
Key findings
1

The reset wording stung

Even in greyscale, “streak lost” made two participants wince. I replaced it with “streak paused — pick it back up.”

2

Partial progress was loved

Everyone gravitated to the “3 of 5” style habits, so I made partial progress a first-class state, not an edge case.

3

Reflection felt like a chore

The end-of-day note was skipped by 4 of 5, so I cut it to a one-tap mood with the written note strictly optional.

04

Refining the design


From wireframe to final
The usability findings drove three concrete changes: kinder language, partial-progress as a core state, and a one-tap mood check-in. Here's how the Today screen and the “missed day” moment evolved.
BEFORE

Streak-first: a big number at the top, pass/fail rows, and a red “streak lost” banner on a miss.

AFTER

Progress-first: a gentle bloom ring, “3 of 5” partial states, and “streak paused — pick it back up” instead of failure.

Final designs
High-fidelity screens built from a sage-and-peach system designed to feel like a calm garden, not a productivity dashboard. Soft cards, rounded geometry, and warm encouragement throughout.
Today screen
Today
Habit detail
Habit detail
Calendar
Calendar
Insights
Insights
Celebration
Celebration
SIGNATURE SCREEN

The “streak paused” moment

This is the screen the whole product is built around. In every other app, a missed day means a broken streak and a wave of guilt. Daily Bloom intercepts that exact moment — the Wednesday from Maya's journey map — and reframes it. The streak pauses instead of resetting, the copy reassures rather than scolds, and a single warm button invites you back without shame.

It's the clearest expression of the core principle: progress over perfection.
More of the experience
Beyond the core loop, I designed the full journey — from a warm sign-up and an empty “first day” garden, to a browsable habit library and a calm settings space.
Sign up
Sign up
First day
First day
Habit library
Habit library
Settings
Settings
Reminders
Reminders
The full journey
The final design spans twenty-two screens. Beyond the daily loop, I designed the onboarding that sets the tone, a gentle notification opt-in, a goals picker, habit editing, milestone “blooms,” and a weekly review that closes each week with encouragement rather than a scorecard.
Goals
Goals
Notifications
Notifications
Edit habit
Edit habit
Achievements
Achievements
Weekly review
Weekly review
Three decisions that define the product
🌱

Streaks that pause, not break

A missed day pauses your streak instead of resetting it. The number dims but holds, so one off day never erases weeks of effort.

💧

Partial progress counts

Habits support “3 of 5” style targets. Doing some is always better than nothing — and the UI rewards it visibly.

🌙

Mood over metrics

Each day ends with a one-tap mood check-in. It adds the emotional context streak-counters ignore, with notes kept optional.

Accessibility

Contrast

All text and key UI meet WCAG AA; the sage primary was darkened to pass on white.

Colour independence

Progress is never shown by colour alone — rings, labels and counts reinforce every state.

Tap targets

All interactive elements are at least 44×44pt with generous spacing.

Tone

Microcopy was written to reassure, avoiding shame language anywhere in the product.

What I learned

Designing for kindness is a constraint, not a vibe.

The hardest part wasn't the visuals — it was resisting the urge to add streaks, badges, and pressure that “drive engagement.” Every motivational pattern I reached for had a guilt-shaped shadow. Interviewing people who'd quit kept me honest: the most motivating thing an app can do is make you feel capable, not watched. I also learned to treat copy as interaction design — “streak paused” versus “streak lost” is the entire product in two words.

Next steps
1

Validate the “pause” model

Run a longitudinal test to confirm gentle streaks actually sustain habits better than hard streaks.

2

Build adaptive nudges

Use the mood data to time reminders for when a user is most receptive, not just at a fixed hour.

3

Add quiet social

Optional, pressure-free “bloom with a friend” accountability without leaderboards or comparison.

🌸

Thanks for reading.

Daily Bloom — a habit tracker that grows with you, gently.

Hsu Yee Mon (Mavis) · UX/UI Designer