Inspiration

The stigma surrounding mental health can make it hard to reach out for support. Sometimes people struggling with their mental health don't even know when they need support the most. Asking for help can be one of the hardest things for people to do. Insight serves as a way to help people get support when they truly need it most.

What it does

Insight is a journal app meant to help you see when you might need support and takes the first step when you most need help. It crosschecks your journal entries with a predetermined list of signal words and notifies you when you show signs of worsening mental health. This notification will provide you with some resources that may be beneficial to your situation. If Insight picks up on particularly harmful language or a negative pattern, it will let you know and text a person of your choice to check in on you. Insight also recognizes words unique to you that may reflect your mental state and gives you the option of tracking these words more closely in the future.

How I built it

We coded in Java. For each journal entry, we parsed the user's input into a HashMap containing each word and how many times it was used. We ignored any commonly used words in the English language, such as "and", "the", and "I". Then, we added the values from this HashMap to a HashMap tracking 2 weeks' worth of journal entries. We also added the day's HashMap to an ArrayList storing the HashMaps from each individual day from the past 2 weeks. We removed the first element of this ArrayList and added to the end of it everyday so we could keep the 2 weeks updated. We looked at the values of the 2-week total HashMap and notified the user if any word was used noticeably often. We asked the user whether they wanted to track these commonly occurring words and added them to our existing list of signal words. We then iterated through our list of potential signal words and checked whether the user's journal entry passed the threshold of any word, which was based on its severity. If so, we alerted the user that they may want to get help. If any words signalling potential harm were used or if the user received several alerts in the past 2 weeks, we sent a text message to the user's support contact to reach out to them.

Challenges I ran into

We had no experience with Android Studio, so we struggled with developing the UI/UX for the app. We also had trouble combining each individual aspect of the project into a final product. Due to the large amount of data we had to store, it was challenging to plan out the data structures we would use.

Accomplishments that I'm proud of

We are proud of how much we were able to accomplish with our experience level since we are all freshmen and new to hackathons. We also taught ourselves a lot of new concepts and we think our idea has real potential for a future product.

What I learned

We learned a lot about Android Studio and the benefits of different data structures, as well as different interface development programs.

What's next for Insight

To further improve Insight, we would include the ability to track more habits and store habit data and journal entries for years to come. We would also expand our database of signal words and words to ignore to refine Insight's algorithms. Lastly, we would like to explore other possibilities with the user interface and optimizing the user experience.

Share this project:

Updates