Inspiration

The way we communicate is changing, as the world is becoming increasingly virtual. People are now communicating more and more through text, instead of face-to-face conversations. However, since 70% of communication is carried out through body language and facial expressions, it can be difficult to convey tone, sarcasm, and expressions through text, without the help of emoticons and emojis, which may not be appropriate in some settings. This is why ToneAI was developed as a way to allow people to communicate more effectively, anytime and anywhere, with any device. It is also able to summarize large paragraphs of text and detects spam. ToneAI is an accessible and does not store any PPI (personal identifiable information), making it a safe and secure platform to use. This is especially helpful in a work-from-home environment, as ToneAI allows you to identify the sentiment and mood of a conversation, making sure your messages are well-received, without worrying about misinterpretations.

What it does

Users can enter a paragraph and select from 3 options: sentiment, spam, and summary on one side. Upon submit, data will be sent to the server to analyze and the result will be displayed on the side. Sentiment and spam will be displayed as pie charts with comprehensive labels to give insights to the users, while summary will be shown as a paragraph.

How we built it

We apply a client/server RESTful API architecture for this website. The client frontend is for users to visit and interact with, while the server act as an API to handle requests and responses from client. The frontend is built using React for UI and chart.js for displaying analysis result, while the backend use Python and cohere for NLP with Flask for request/response handling. Upon submitting, client will send requests and wait for responses from server to display. The backend server is hosted separately and can work as an API for not only our project but for other websites as well if the endpoint is correct.

Challenges we ran into

  • Hosting frontend and backend separately requires us to handle CORS and deployment variables.
  • Incorporating different technologies requires us to keep track of the compatibility between compiler version and package/API versions.
  • Handling states while waiting for responses and between multiple responses is a challenge because there is a possibility of missing null check or data not cleaned up properly from previous requests.

Accomplishments that we're proud of

We decided to push ourselves to the limit by learning entirely new frameworks. Neither of us had ever worked with React, Flask, or the Co:here API before, so we were incredibly proud to have built an application that incorporated our concept with all three in just 23 hours with only two people! Furthermore we also decided to switch out of our comfort zone, but switching our speciality and working on what we weren't super familiar with. It was hard to integrate co:here to display the information so we are proud that we got the model trained and working.

What we learned

We learned how to use React, Flash It is really hard when you don't have a designer, and only two developers minimizing scope is important

What's next for ToneAI

Future milestones we have include adding partner app support such as email integration and chrome extension so it would be able give suggestions on how to improve your tone and condense information more effectively in a broader variety of settings.

We also planning to add greater variety infographics such as bars, and percentage so users are able to more easily visualize a break down of their sentence analysis.

Built With

Share this project:

Updates