StoryBloom, a bedtime storytelling app

StoryBloom

Personalized bedtime app that turns how today felt into an illustrated story for kids ages 3 to 8. Four wordless picks, one dreamland, and a goodnight ritual, about three minutes a night.

Project Type

Personal
Live prototype

Timeline

May 2026

Team

Lead Designer (Me)
1 Product Designer

Tools

HTML + Tailwind
Claude Code

What I did

  • Led the design of the ritual as one continuous flow.
  • Wrote the ten story templates and the substitution system that lets tonight's picks shape their language.
  • Built the working app in code with Claude Code, a single file prototype that runs the full ritual end to end.

The same story, every night

Bedtime is repetitive by design; children find comfort in the familiar. But the story rarely catches what the child carried into bed. The day's small frustrations, the new feeling without a name, the question never asked. Parents reach for the same five books.

Generic AI storytellers don't fix this. A chat box at bedtime is the wrong instrument. A pre-reader can't type, and a tired parent doesn't want a prompt window. The product that meets this moment has to be quieter than that.

Children don't process the day in words

A three year old can't say she felt overwhelmed at preschool. But she can point to a color. She can say it felt like rain. Four nonverbal picks, a color, a weather, a shape, and a little friend, make the day legible to a system without ever asking the child to put a feeling into language.

From the day to the goodnight, in three minutes

Seven moments. The first four are inward: how today felt, answered one tap at a time. The fifth turns outward to where tonight's story should happen, and the last two close the night. Every step can be skipped.

The seven moments of the ritual: color, weather, shape, friend, dreamland, story, goodnight

How a feeling becomes a story

Tonight's picks compose the story's emotional palette. The same dreamland can hold many nights; the difference is the child.

One night worked through: five picks composing into the story Goodnight, moon garden

In the working build, ten handwritten templates, two per dreamland, stand in for the model. The four picks pour into their placeholders and shift the voice, not just the nouns, so every night reads differently while the language stays hand tuned for reading aloud.

Bedtime-warm, quietly geometric

Six pastels carry the day's color picks, but every button is periwinkle. Coral is activating; periwinkle is sleepy. Bedtime gets the sleepy one. Fraunces holds the storytelling and Nunito holds the interface.

Design language board: palette, type, the five worlds, surface and rhythm

Quiet, on purpose

Invisible AI

No chat, no model picker, no regenerate. A brief writing pulse and the line "written for tonight" prove the story is fresh. The intelligence is the medium, never the interface.

Nonverbal first

Every required input is a tap on a colored chip, a soft icon, a face. Words are an output, not an input.

One of each

Not options to compare; picks to commit to. Choice fatigue is the enemy of bedtime.

Bedtime, not engagement

The last screen is a dim twilight with no call to action, no streak, no tomorrow's story. A bedtime app that fights for attention at bedtime has already lost the brief.

It starts with an invitation

Lumo the moon, asleep on a cloud, and one button.

The welcome screen, Lumo asleep on a cloud

Four picks, no typing

Each screen asks one soft question and accepts one tap.

The four feeling steps: color, weather, shape, and little friend

Nine friends, or make one up

The companions are deliberately portable, a paper boat, a lantern, a little bear, so any friend fits any world. The Create a Friend sheet lets the child invent their own.

The little friend picker and the Create a Friend sheet

Then the night turns outward

Five dreamlands, then the story arrives, written for tonight.

World selection and tonight's story screen

The last screen asks for nothing

After the story, one gentle action closes the night: a slow breath together, a small wish, a goodnight wave. Then Sleep Mode dims the screen and stops asking.

The goodnight step and Sleep Mode

Tonight's story becomes tomorrow's star

Kept stories return as a constellation on the welcome screen, each star back where its night left it. The ritual recurs because the night before kept something worth coming back to, not because the app demands it.

Saved stories as a constellation on the welcome screen, and Lily's shelf

Quiet controls for the grown-up

Behind a small gear, one sheet holds everything the adult needs and the child never sees. The child's name flows into the story, age tailors the gentle words, and theme chips steer what tonight's stories lean toward. Everything lives on the device. No account needed.

The parent settings sheet: little one, story, bedtime, and content preferences

Tonight's ritual, running right here

This is the working build, not a video. Make the four picks, choose a dreamland, and read what arrives.

The design work was the input, not the output

StoryBloom is an AI product where the AI never appears. The hard problem wasn't generating a story, it was the input: a three year old cannot type a prompt, so the interface had to make a feeling legible in four taps. Once the day was legible, everything downstream got quieter. Building it taught me that the craft in AI products is deciding what the system needs to know and how a person hands it over.

Tell me what's on your horizon.
Hey, I'm Chang. Well, the AI version. Feel free to ask me anything.