Our Inspiration
This recent year has been the most traumatic for people all over the world, and feed from the news and social media is no help in easing the minds of the wider US populous. Maybel is a web application designed to help users get away from the constant stressors of the internet and encourage good psychological well-being.
What Does Maybel Do?
Maybel asks the user how s/he is feeling in the center-screen text input. It then calculates the sentiment of the user's input and gives back helpful quotes based on the input's emotional severity. If the sentiment is calculated as "dangerously low", then Maybel also directs the user to other online resources (like a suicide hotline, in one example) as needed.
What's Under The Hood?
For Backend, we are using Vader from the NLTK library and Google Cloud's sentiment analyzer to analyze text. Then we take the sentiment score and get a quote from Paper Quotes' API. Based on the sentiment score, we search for a random quote containing certain tags such as hope or motivation. If the sentiment score is low and there are trigger words in the user input, we direct the user to other online resources out of a small database of outputs. We are using Flask to process our http requests and API data as a means to glue the the whole thing together.
In the Frontend, we use React to format the components of the screen, including the Music, Journal Entry, and Connect component (which connects to the backend and returns an output). There are small animations and filters that are also implemented with the React JavaScript format.
Challenges
Our biggest hurdle was the issue of our team being in vastly different time zones; the largest gap amounting to a 15 hour time difference. Initially, we had problems coordinating and working, but with some help from Git version control and a few Discord meetings, we were able to organize the project smoothly. The next big challenge was connecting a frontend in one language (JavaScript) to a backend in a different language (python), but Justin had experience with using Flask as a functional parsing tool, so we were able to implement it after some logistical planning. In terms of overall difficulty, everyone in our team had a small amount of practical experience in web development, and Seunggun and Justin had some time logged with working with external APIs. Everyone ended up needing to learn at least one new language or framework over the course of the project in order to make it all come together as one application.
Accomplishments
Overall, we are all just very proud that we were able to launch something at all. The fact that Maybel will be of practical, psychological value to the end-user is a great bonus, and it is invaluable in the grand scheme of things. We are also super happy that we were able to implement sentiment analysis since we had all only heard of its use before, and we were quite excited to be able to use it. Once Michael was able to add the Paper Quotes API, it made it really easy to see how Maybel could grow to be something really useful for anyone if we gave it enough time. Zay, our designer, had to learn to use React to build up a visually beautiful project from scratch, and he was thrilled about it at every step of the process.
What Is Next For Maybel?
We all see Maybel as a helpful tool for bringing peace to the minds of people everywhere. To that end, we want to work to make it feel like a therapeutic application, boasting functionality such as Conversation with Maybel, Floating Notes, Calming Music, and _The Good News Feed. With time, we hope we will be able to turn Maybel into a one-stop-shop for psychological serenity.
Built With
- flask
- google-cloud-platorm
- javascript
- nltk-vader
- paper-quotes-api
- python
- react
Log in or sign up for Devpost to join the conversation.