Inspiration The idea for MoodMate came from a simple thought: “Wouldn’t it be nice to have a small app that checks in on you and offers a little motivation when you need it most?” With mental wellness becoming more important than ever, I wanted to create something light, supportive, and beginner-friendly.
💡 What it does MoodMate is a desktop application that asks how you're feeling — whether you're happy, sad, stressed, or tired — and gives you a motivational message or a small activity idea to help you feel better. It's designed to be quick, simple, and comforting.
🛠️ How we built it The project was built using:
Python
Tkinter for the graphical user interface
OpenAI’s GPT API to generate personalized responses based on the user's mood, but a lot of errors were generated therefore, it will be considered to be part of the future work for the project. Otherwise, it uses pre-written responses to deliver encouragement.
🧩 Challenges we ran into learning Tkinter GUI layout in just few hours starting the night before submission as a lot of changes around the group and project were
Understanding how to handle button events and function calls
Learning how to connect to the OpenAI API and handle its responses, while exploring potentially incorporating it into the project.
Debugging when nothing appeared in the GUI window (classic beginner hurdles!)
🏆 Accomplishments that we're proud of Completed a functional and visually clean desktop app
Learned to build with tkinter for the first time
📚 What we learned How to build and run a basic Python GUI app
How to structure Python code into clear functions
How to design with the user’s experience and emotion in mind
🚀 What's next for MoodMate – A Smart Mood Companion Add a journaling feature to track mood history
Introduce daily check-ins or reminders
Add more moods and personalize the interface with themes
Adding AI
Create a mobile app
GitHub_link: https://github.com/Rokia-Elgharably1/hackprinctom/blob/main/princton%20project
Built With
- gui
- python
Log in or sign up for Devpost to join the conversation.