Inspiration

These days, listening to or watching the news can often result in feelings of anxiety and stress, as media outlets tend to focus on the more sensational headlines that draw large crowds. Especially in light of the pandemic that has taken a huge toll on mental health globally, the 24/7 news cycle often only exacerbates the problem as it seems that there is just a perpetual stream of bad news. This app shows that there is actually a lot of good news out there that just doesn't get the same kind of publicity.

What it does

DayOne helps users start off their day feeling good by fostering healthy habits of journaling and giving encouragement. It also allows users to stay up to date on current events without walking away feeling gloomy. It uses machine learning to summarize user's thoughts and filter out the bad news, leaving the most relevant positive news so that the user can be productive and not waste hours scrolling through headlines. It also uses speech recognition to ensure that the user is giving positive encouragement!

How we built it

React front end, NodeJS/Express backend, Mongodb database, News API, VADER sentiment analysis, KeyBERT keyword extraction, python, NLTK, SpeechRecognition.

Challenges we ran into

By far the biggest challenge was being virtual and thus not having a team. As a result, I single-handedly implemented the project end-to-end from scratch, including design, front-end, back-end, APIs, and machine learning.

Accomplishments that we're proud of

This was my first time using machine learning in a web app. I'm also pleasantly surprised that I was actually able to implement everything on my own in just a day and that it's fully functional!

What we learned

How to incorporate machine learning into a web app, how to have a JS backend talk to Python ML code, how to use various new React modules/packages, how to get audio input and do recognize speech.

What's next for DayOne

Since I worked on this project alone, my time was spread thinly across ML, frontend and backend, so I was not able to drill into any area in as much depth as I would've liked. The first priority moving forward is to improve upon the ML models, perhaps by using an ensemble-based approach or by doing more customized training. Next, I would like to expand this to have more of a social aspect, ie: users can send each other the positive encouragements they record, users can share positive articles with each other, users can chat with others going through similar experiences.

Share this project:

Updates