We found ourselves spending a lot of time on messenger apps talking to friends. But often we would have thoughts or ideas we wanted to jot down that we would forget in the flow of conversation. We realized that with a messenger bot we could quickly jot down our thoughts and resume our conversation without breaking the flow or having to open a separate app.

What it does

This bot enables you to record your thoughts and later view them. It also lets you analyze and plot out your mood overtime.

How I built it

  1. I made a node.js backend to accept the webhook and send back responses
  2. I stored user diary entries in a MongoDB database
  3. I created webpages to view user entries in ejs using Plotly for the graphs

Challenges I ran into

Familiarizing myself with the various part of the Messenger API proved to be the biggest challenge. Configuring and researching the exact parts that I needed was something that took the longest amount of time.

Another problem was designing the webview UI elements for mobile. Some of the graphs we wanted to show proved to be unfriendly for smaller screens.

Accomplishments that I'm proud of

We were proud that at our fast iteration time and how we were able to write and deploy this with no major problems.

What I learned

The main thing we learned was the messenger api. However working with a templating engine was new for us, as well learning how to design for mobile

What's next for Messenger Diary

The chatbot definitely has room for improvement. The main point of concern is the slightly unintuitive user experience that requires the user to press multiple button to view the webview. The analysis could also be improved with further mood analysis and phrase detection etc.

Built With

Share this project: