Inspiration
A lot of mental health apps either reduce feelings to a single mood score, which feels clinical and gets abandoned within days, or they're pure chatbots, which can feel hollow or even risky if they try to handle a crisis on their own. I wanted something in between: a space that helps you notice your own patterns over time, without pretending to be a therapist. Mental health, especially for students, often gets worse simply because no one notices the pattern until it's a crisis. I wanted to build something that surfaces the pattern early, gently, and safely.
What it does
MindEcho is a daily mood journaling companion. Each day, you log a quick mood score and write a few sentences about what's on your mind. In return, you get a short reflective prompt, something that nudges you to think a little deeper rather than handing you advice. Over time, the app builds a simple chart of your mood trends and surfaces words that show up often in your entries, so patterns like "every Sunday night gets harder" become visible instead of invisible. If an entry contains language suggesting crisis or self harm, the app immediately steps in with real helpline numbers instead of trying to respond conversationally.
How we built it
I built MindEcho with Streamlit for the interface and Pandas for the mood tracking and pattern analysis. For this hackathon demo, the AI reflection feature uses pre written, rotating prompts chosen through simple keyword and mood score matching, clearly labeled in the app as mocked rather than a live model response. This was a deliberate choice so the demo never claims to be something it isn't. The crisis detection layer is real and runs on every single entry before anything else happens, checking for a set of keywords and immediately surfacing helpline information if triggered.
Challenges we ran into
The hardest part was deciding what the app should not do. It would have been easy to make the AI "reflection" sound more clinical or advice giving, but that risks overstepping into territory that needs a real professional, not a hackathon prototype. I also had to think carefully about the crisis detection logic. A simple keyword list is not a real safety system, and I wanted the app to be honest about that limitation rather than overselling it as a finished crisis tool.
Accomplishments that we're proud of
I'm proud that the safety net is not an afterthought bolted onto the demo. It runs first, every time, before any reflection is shown. I'm also proud of how the pattern view turned out. Seeing mood dip every Sunday night across the seeded demo data, then watching that pattern actually show up automatically in the word frequency analysis, felt like proof that this approach to mental health tracking has real value beyond just a mood number.
What we learned
I learned how much careful thought goes into building anything mental health adjacent responsibly. It is not just about making something that works technically, it is about making sure the thing you build never pretends to know more than it does, and always points people toward real human support when it matters most. I also learned a lot about designing AI features that are honest about their own limitations rather than dressing up something simple as something it is not.
What's next for MindEcho
The next step is replacing the mocked reflection layer with a real Claude API call, using a system prompt that keeps responses strictly reflective rather than advice giving, with the same crisis check running before any model call. I would also like to add persistent storage so entries survive beyond a single session, and eventually explore an opt in way for users to share their pattern view with a school counselor or trusted adult, since pattern visibility is something counselors have told me they genuinely want but rarely get from clients.
Built With
- api
- python
- streamlit
Log in or sign up for Devpost to join the conversation.