🌙 Bedtime Stories – Personalized Story Generator for Kids
A magical web app that creates unique bedtime stories for children, tailored to their age, interests, environment, and values—designed for imagination, bonding, and learning.
✨ Inspiration
Bedtime is one of the most intimate moments between parents and children. I wanted to turn that moment into something truly magical—beyond static storybooks. Inspired by how stories shape identity and imagination, I built a tool that empowers families to co-create meaningful tales that reflect their child’s personality and values.
💡 What it does
Bedtime Stories is an interactive web app that allows users to:
- Select the child’s age and gender
- Choose or type in interests (e.g. animals, robots, fairy tales)
- Pick from 20+ themes (e.g. superheroes, princesses, dragons…)
- Choose from 20+ locations (e.g. enchanted forest, underwater city…)
- Select or enter a key object (e.g. a magic lamp, a key, a mushroom…)
- Pick a virtue to teach (e.g. courage, kindness, patience…)
- Define the tone (funny, serious, poetic, calming…)
- Allow user to add custom guidelines.
Once all selections are made, the user clicks a single button:
➡️ Generate Story — which sends all the details to a generative AI, returning a custom-written story in seconds.
The result? A completely original, kid-appropriate, emotionally resonant bedtime story tailored for one child, at one moment in time.
🛠 How I built it
I built Bedtime Stories using modern tools optimized for fast development, great UX, and scalable AI integration:
- Bolt: As the React framework backbone, Bolt helped us structure a clean, maintainable front-end with fast routing and built-in performance.
- Custom AI API wrapper: I developed a lightweight wrapper that handles secure communication with the generative AI model, managing request formatting, rate limits, and error handling.
- Prompt engineering: The heart of the system is a carefully crafted system prompt that adapts story tone, age, and structure dynamically based on user input.
- Input interface: Icon-enhanced dropdowns, free-text fields, and virtue selectors let users blend structure with creativity easily.
- Supabase: For authentification layer and backend as service with persistent storage.
This stack allows us to deliver a fast, delightful, and stable storytelling experience across devices.
Everything is structured to be modular and extendable (e.g. support for illustrations, voice narration in future).
🚧 Challenges I ran into
- Designing a UI that’s elegant and child-inspired, without feeling cartoonish or cluttered
- Building a prompt that remains consistent and safe, regardless of vague or creative inputs
- Managing a hybrid input system (dropdowns + free text + icons) while keeping UX fluid
- Ensuring the generated stories are age-appropriate, wholesome, and structured
- Balancing narrative creativity with structure, especially across a wide range of values and styles
🏆 Accomplishments that I am proud of
- A zero-friction experience from form to story
- Elegant mobile-first UI that feels magical but not gimmicky
- A scalable system prompt that consistently produces emotionally rich and age-appropriate stories
- Creating something that strengthens family bonds and sparks imagination
📚 What I learned
- Prompt engineering is a creative craft—especially for children’s content
- Tone, sentence complexity, and pacing need to adapt deeply to age groups
- Emotional UX matters as much as visuals when building for families and kids
- Designing for diverse and inclusive scenarios (e.g. gender-neutral stories, wide interest ranges) improves story quality for everyone
🚀 What's next for Bedtime Stories
- 🎙 Voice narration (text-to-speech) with lullaby background sounds
- 🎨 AI-generated illustrations based on each story
- 📖 Story saving and sharing (downloadable storybooks or parent accounts)
- 📅 Bedtime streaks & rewards to build routines and values over time
- ❤️ Emotional tone selector (calm, exciting, silly, etc.)
Built With
- bolt
- supabase
Log in or sign up for Devpost to join the conversation.