The first person that someone usually talks to about their mental health is themselves. This buries the person with self-doubt that becomes hard to cure. ForMente comes in between to diagnose a person's feelings through Natural Language Processing. It is a personal diary application that lets a user know how their daily emotions feel, through the text they note down in it.

What it does

ForMente is a personal diary that allows users to write down their minds every day. These texts are stored securely in our database, and users can visit them whenever they want. The main aim of ForMente is to let the user know how they are feeling and that they are not overthinking it. To achieve this, the application runs natural language processing on the texts written by a user and shows them how they are feeling in real-time. All the data provided by a user is never accessed by anyone else and is secured safely in a database.

How we built it

We built the application in 3 broad parts -

  1. The application The application has been built using Flutter and Dart and is available on all Android devices. The UI has been taken utmost care of and is as smooth as it could be. This application is available through GitHub for everyone in the world.

  2. The model The application uses a model to classify what a user is feeling. This is a Natural Language Processing model, and it was trained using scikit-learn and python. We started by training an LSTM neural network, but after spending around 12 hours on it, we couldn't get it to run on an Android device, due to the technical limitations. After this, we decided to switch to a lighter model, which could be deployed on the free dynos available at Heroku, and we succeeded!

  3. The backend The backend serves as a holder for our model. This was written using Python and FastAPI, and it has been deployed on Heroku. The backend API is completely free, independent of the other parts of the project, and easily accessible; hence, developers can use the backend API as a standalone product. The API takes in the text provided by an application and returns an emotion strongly correlated with the text.

Challenges we ran into

The very first challenge we encountered was the repeated failure in pre-processing and fitting of data in TensorFlow Model. With repetitive hits and trials, and sleepless night, we came to our current working algorithm that predicts the user's mood by analyzing the diary entry. Developing machine learning backend took most of our time, making it difficult to complete the app. Another big challenge was the UI development which was also very time-consuming in 24 hours hackathon.

Accomplishments that we're proud of

Even after a series of hard challenges, we're proud of completing this stamina-focused hackathon. In mere 2 days, we gained a lot of experience competing in our first offline hackathon. While finding alternatives for the failed approaches, we learned a whole lot of new technology that will surely help us in the future.

What we learned

We learned a great deal about Teamwork, Time Management, Organization Skills, and Taking responsibility. We got to explore amazing workshops and talks organized by Ashoka University, which really helped expand our horizons. We were fortunate enough to meet some amazing people from various universities with some even amazing ideas.

What's next for ForMente

ForMente is still at its stage zero, but it is still available for and tested for real users. The application would ideally be published on the play store in the future, through which it would be accessible to everyone. Additionally, we aimed to assist people suffering from mental illness, but due to the time limitations, the app right now only points to their emotional state and does nothing about it. The user can still go through their past notes and see what the app was telling them about their emotions. This can help the users grow as a person and feel proud of their achievements. In the future, we don't want to keep this project just as a project, rather we want it as a product for people who are unhappy with their mental health.

Built With

Share this project: