The COVID-19 pandemic presents an unprecedented challenge to humanity by mass-isolating individuals. While being cooped up in our rooms, awareness of our own mental health becomes more important than ever. Counselors, therapists, and "mental health" apps can be expensive and inaccessible to some, and so not many individuals are motivated to introspect and may unknowingly fall into mental health decline and moreover suffer from mental illnesses.
What it does
Inspired to make personal mental health awareness more accessible, we built a user-friendly web app that motivates users to record "audio diaries". This app then runs a sentiment analysis of the diary entry using AWS Comprehend to output a "sentiment score", which indicates how positive/negative/neutral the user's entry was. Over time, these accumulated diary entries with their sentiment scores are able to show the user's general mood trends and establish a "mental health status" based on these data. The app is a safe place to store easy-to-record audio diaries and bring awareness to users of their mental health statuses over time.
How we built it
The web app involves a front-end, which was made using React, and a back-end, which was made using Node. We used MongoDB as our database and used AWS S3 to store the audio diaries. We used AWS Transcribe to convert the audio in text and then used AWS Comprehend to run a sentiment analysis on the text. We used AWS Serverless to host our web app.
Challenges we ran into
We used AWS extensively in this project, and as fresh beginners with no experience in AWS, it was a challenge in utilizing AWS's services in our web app. Interacting AWS with Node was one example; it took us a while to link AWS Transcribe and Comprehend with our backend. Another challenge was finding a way to record audio on the web app and uploading it onto our S3 bucket.
Accomplishments that we're proud of
We were ecstatic when we were able to connect AWS with our backend since it was such a back-breaking endeavor. This accomplishment allowed us to run a sentiment analysis on an audio file. Another accomplishment was getting AWS Serverless working.
What we learned
We have never used AWS before, and our entire web app revolved using AWS. This web app showed us the benefits of this service as well as the difficulties we sometimes face in interacting this service with our web app. This project was also one of the member's second time coding with Node.js, and learning how to make a backend with a new framework was a great educational experience.
What's next for Corona Diaries
We plan to incorporate a social network aspect into Corona Diaries, where friends of users can join and form "support groups" together. In the case that a user experiences a concerning decline in mental health status, friends within the user's support group can be notified and can text the user to check how they're doing. This app provides a digital means for social support groups to thrive in a non-physical setting.