Twitter as a social media platform is driving society into extreme divisiveness and much of its effect can be attributed to its addictive user interface, catered search results and hostile language. Our dashboard aims to reduce the detrimental effects of these features of twitter in an effort to showcase an alternative to its current divisive form.
What it does
Our UI displays 4 columns of tweets rather than twitter's one. This is in order to encourage the user to consume more content and thereby more viewpoints (as searches aren't catered per user but order strictly by relevance to the query). We also show a sentiment score for each tweet so that the users could know if a tweet is directly using passionate language to persuade them as well as if the rhetoric is mainly positive or negative.
How we built it
The website is made using the plotly-dash web framework for python as well as additional java script and css. The twitter api calls, sentiment value calculations and the layout of the website are all in python. The sentiment generation is calculated by summing the values of each word in the tweet from the vader sentiment lexicon.
Challenges we ran into
Accomplishments that we're proud of
We are very proud of the overall implemented user interface, we have spent a lot of time ensuring everything was in its place and that we were ultimately satisfied every step of the way.
What we learned
We had the chance to learn a lot about different methods of API authentication as the Twitter Search API offers a number of methods of authentication, each with different levels of access and we got the chance to learn the hard way that sometimes trying to take the easy route by using a web framework over coding js and html to make our web app can be more tumulus that beneficial.
What's next for Twitter Sentiment Dashboard
Our mastery of the Twitter Search API has definitely not reached its peak and it has a lot more data to let us display for out users.