Inspiration

As students, we often find it challenging to balance our health with the rigorous demands of coursework. Neglecting our body’s signals—whether it’s skipping sleep, overloading on caffeine, or ignoring stress—can backfire, ultimately impairing our ability to focus in class and perform at our full potential. By prioritizing our well-being, we can not only improve our academic performance but also foster a healthier, more sustainable lifestyle.

What It Does

The locally-run web app begins by collecting basic demographic information, such as age, which is securely stored locally. Users then input their daily lifestyle habits—such as screen time, sleep duration, exercise, and caffeine consumption. Using this data, the program analyzes patterns and generates a personalized prediction of the user’s cognitive performance, mood, and stress levels. This insight helps users understand how their habits may be influencing their mental well-being and productivity.

How We Built It

Front-end

On the front end, we designed mock-ups for images and web pages using Photoshop and Figma. The page functionalities were coded in JavaScript, with HTML for structure and CSS for styling. User inputs are captured and transmitted to the backend, where Gemini generates a personalized mood prediction and sends it back to the UI for display.

Back-end

We utilized Python to develop a Gemini API call, which processes string inputs retrieved from localStorage. The backend handles user-submitted data, sends it to Gemini, and returns a mood prediction based on the input.

Challenges We Ran Into

One of the biggest challenges we faced while developing Moodling was connecting the front end to the back end while integrating the Gemini API for mood predictions. Initially, we ran into CORS issues, which blocked requests between our front-end application and the API. This required us to adjust headers and troubleshoot security settings to allow smooth communication. Despite these hurdles, we successfully built a system where user inputs flow smoothly to the Gemini API, and Moodling delivers personalized mood predictions with accuracy and speed.

Accomplishments That We're Proud Of

We’re proud of how Moodling came together, especially the intuitive UI our team designed to make mood tracking both engaging and user-friendly. Overcoming the challenge of integrating the Gemini API, handling CORS issues, and ensuring smooth front-end–back-end communication was a big win.

What We Learned

Through building Moodling, we learned the importance of seamless API integration, especially when working with third-party services like Gemini API. Debugging CORS issues taught us how to manage cross-origin requests effectively. We also gained experience in frontend-backend communication, optimizing API responses, and ensuring a smooth user experience. Most importantly, we learned how to collaborate as a team to turn a concept into a fully functional, engaging app.

What's Next for Moodling

Our next step is to improve data persistence by moving beyond local storage and implementing a secure, scalable database so users can track their mood history over time. This will allow us to introduce interactive graphs that visualize mood trends, helping users identify patterns in their sleep, caffeine intake, and exercise habits.

We also plan to train a personalized machine learning model that adapts based on user data, improving the accuracy of mood predictions with every new input. Accuracy graphs will help users see how the model evolves over time, making Moodling smarter and more personalized.

Share this project:

Updates