Nebula Narrator

Inspiration The idea for NebulaNarrator came from my own experience — I often found myself using AI to write short, imaginative stories when I was bored. It became a fun escape, and I started wondering what it would be like to create a personalized storytelling platform that adapts to the reader’s mood and preferences. That curiosity led to building NebulaNarrator — a cosmic, AI-powered storytelling app that makes the user the hero of their own interactive mission.

What it does NebulaNarrator allows users to personalize and experience short, space-themed stories that adapt to their preferences. Users can: Choose a storytelling tone (Interactive, Calm, Poetic, etc.) Select a visual comfort mode (e.g., High Contrast) Provide a custom prompt to guide the story’s theme Hear the story narrated aloud Continue the narrative through multiple chapters with remembered context It’s designed as a mission-based storytelling journey, making each user feel like they’re on a unique adventure in space.

How I built it I built the frontend using React and styled it with Tailwind CSS to ensure responsiveness and a clean, space-inspired look. The backend is powered by Flask, which communicates with Google’s Gemini Pro AI to generate the story content based on user input. I used the Web Speech API to enable text-to-speech narration and managed user preferences and progression using React state.

Challenges I ran into One of the biggest challenges was training the AI to consistently reflect the selected tone (like "Calm" or "Cinematic") in the story output. Despite structuring detailed prompts, the AI sometimes drifted in tone — something I’m still experimenting with. I also faced frontend layout alignment issues and syncing data between chapters while preserving the previous context without creating confusion.

Accomplishments that I'm proud of Designed and developed a complete full-stack AI-powered storytelling app solo Successfully integrated user customization, AI, and narration into a cohesive experience Built a multi-chapter story flow that remembers and builds on earlier content Learned new tools and frameworks outside of my core backend comfort zone

What I learned This project helped me grow as a full-stack developer. I learned how to manage React routing, UI responsiveness, and state logic more efficiently. On the backend, I became more comfortable with Flask APIs and integrating generative AI to produce context-aware output. It also gave me hands-on experience designing with accessibility and personalization in mind.

What's next for NebulaNarrator Improve how the AI adapts its storytelling tone based on the selected reading style Enhance the narration voice with expressive pitch and pace that matches the tone Add more visual comfort modes like Dyslexia Friendly and Reduced Motion Enable users to save or revisit completed missions Introduce achievements and visual rewards to gamify the storytelling experience

Built With

Share this project:

Updates