Inspiration
As a high school student, I’ve seen how academic pressure, social stress, relationships, and constant expectations can affect teenagers’ emotional well-being. At the same time, teens may not always feel comfortable opening up to someone, and professional support isn’t necessarily available the moment they need it. I was interested in whether AI could help fill part of that gap, but I noticed that many existing tools felt generic rather than designed around how teenagers actually communicate. That inspired me to create Juno AI: an emotional wellness app built specifically with teens in mind.
What it does
Juno AI gives teens a space to talk through what they’re feeling while also helping them reflect on their emotions over time. At its center is a teen-focused AI chatbot, but Juno goes beyond a typical chat experience. It identifies emotional tone and intent, tracks emotional trends, generates personalized insights, and provides guided journaling prompts based on the user’s recent emotions.
How I built it
Juno was built in Python as a multi-page Streamlit web application, with GPT-4o mini powering the chatbot through the OpenAI API. The chatbot combines retrieval-augmented generation (RAG) with a custom system prompt and a curated library of adolescent-focused resources, allowing responses to be grounded in relevant coping strategies rather than relying entirely on the model’s general knowledge. I also built separate systems for emotion classification, safety filtering, journaling, emotional trend tracking, and user data storage through SQLite.
Challenges I ran into
One of the biggest challenges was making emotion detection reliable. Early versions of Juno were overly confident when classifying vague or mixed-emotion messages, so I redesigned the classification prompt and introduced separate confidence scores for emotional intent and tone. Another challenge was balancing conversation memory with token limits: Juno needed enough previous context to feel personalized without overwhelming the model. I also spent significant time iterating on the system prompt and RAG behavior to make responses feel natural for teens while maintaining clear safety boundaries.
Accomplishments that I’m proud of
I’m especially proud that Juno became more than just an AI chatbot. I was able to build an interconnected system where conversations can become emotion logs, those logs can form a visual emotional timeline, and that timeline can then generate personalized insights. I’m also proud of the amount of iteration that went into Juno’s AI itself. Rather than simply connecting an LLM to an interface, I developed a custom system prompt, RAG pipeline, emotion-classification system, and safety mechanisms around the underlying model.
What I learned
Building Juno taught me that creating an AI application, especially one dealing with emotional wellness, is about much more than getting an LLM to produce convincing responses. I learned how important grounding, prompt design, uncertainty, safety, and transparency are when designing AI around sensitive topics. Most importantly, I learned that technical capability has to be paired with thoughtful boundaries: an AI can provide supportive tools, but users should understand its limitations and know that it is not a replacement for professional care.
What's next for Juno AI
I’d like to continue developing Juno with the goal of eventually expanding it to a real teen audience. An earlier prototype of Juno was used in a study I conducted with high school students, where participants reported that the teen-focused chatbot felt more emotionally relatable than a general-purpose chatbot. Those results encouraged me to continue exploring how AI can be intentionally designed around teen communication and emotional needs. Moving forward, I hope to use broader user testing and feedback to further improve Juno’s personalization, safety, and usefulness for teens.

