Inspiration
Looking at the WPI community struggle greatly with mental health issues moved both of us to develop a chatbot application to help students confront their personal struggles with their mental and emotional states.
What it does
The chatbot application listens to the end-user's input about the problems they face in their day-to-day lives, and presents various resources and advice specifically aimed at younger adults in school to help them confront their personal struggles. Our philosophy centered around self-help, believing that ultimately only the individual themselves can improve their wellbeing.
How we built it
We saw the Flutter SDK as a great option for developing our chatbot application, as Flutter is able to target just about every major platform under the sun, including web apps, iOS, and Android (desktop applications are still in beta). Flutter is available in Dart, which neither of us had much experience with, so learning both the framework and the language was a bit of a challenge. The actual chatbot was made using Dialogflow, a chatbot builder hosted on the Google Cloud Platform.
Challenges we ran into
Flutter's Widget and overall UI architecture were not entirely intuitive at the start, which lead to some frustrating debugging sessions with text overflowing off the screen and manipulating lists. Even before getting to the UI, it was difficult deciding what features would be most impactful to potential users, which we were eventually able to settle by doing research on online communities, such as on Reddit.
We also ran into what seems to be a bug in Dialogflow, where the agent did not respond, seemingly at random. We think believe the issue has been resolved.
Accomplishments that we're proud of
The UI is rather robust! It looks pleasant on both mobile and on the web and can format text to include hyperlinks. The dialogflow agent responds immediately with appropriate assistance on just about every matter we focused on.
What we learned
NLP processing is difficult. Even though the dialogflow agent did most of the heavy lifting for this project, there remain some concerns about a more capable bot that can continue longer conversations with the user and even learn things about them to further assist them in their personal conflicts. That is something we wish to further focus on without major UI improvements looming on our to-do list.
What's next for Mental Health Chatbot
In the future, we want to make our chatbot application more capable of helping students by finishing a feature to connect users with others that may have experience with the same issues to help push each other up, as well as a more intelligent system that can provide a better conversation for the end user, taking into account the context of that user (such as their preferences, language, and personality). With surprisingly little attention to mental health focused applications towards students, we expect great opportunities and impact on the horizon.
Built With
- dart
- dialogflow
- firebase
- flutter
- google-cloud
Log in or sign up for Devpost to join the conversation.