The idea behind this project came from the need for more compassionate, interactive digital companions. We all go through tough times, and sometimes having someone (or something) that feels like it actually cares can make a huge difference. We wanted to build a chatbot that doesn’t just answer questions, but also adjusts to your mood and gives you the support you need, whether it's through comforting words or just changing its background to make you feel better.

What I Learned: I learned a lot about integrating emotion recognition with chatbots using the Gemini API. It was exciting figuring out how to make the chatbot understand and respond based on different emotions whether you’re feeling sad, happy, or anxious. I also worked on making the background change dynamically based on the mood, which made the whole thing more engaging. On the tech side, I improved my skills with Flask for the backend, and JavaScript for creating those dynamic mood-based backgrounds.

This project used a mix of:

Gemini API for emotion-based responses.

HTML/CSS/JavaScript to build the front-end, where the background changes based on how the user feels.

Flask for the backend, handling requests between the frontend and the Gemini API.

The chatbot picks up on emotions through keywords in the messages, and based on that, it adjusts how it responds. For example, if you're sad, it might give a softer, more comforting response, and the background could shift to calm blues or greens.

Built With

Share this project:

Updates