We wanted to provide users with the ability to perform a keyword search using Twitter to find popular and related phrases.

What it does

Tsensum creates a visual wordmap showing how keywords are connected to each other through tweets, starting with a word given by the user. The connectivity is determined by keywords of a Twitter search for tweets about a particular topic. Tsensum also performs sentiment analysis on the tweets to see what the public thinks about these topics and displays this data in the graph.

How we built it

We utilized Indico's keyword and sentiment APIs using Python and used networkx to display the resulting data. Flask was used to create a web application and handle HTTP requests.

Challenges we ran into

We tried using Django instead of Flask initially but switched over as we did not have enough experience to be working with Django. Also, Twitter API limits the scope of the search, making it difficult to scrape older tweets and limits the quantity. Not only that, the Twitter API is slow which results in the wordmap taking longer to generate.

Accomplishments that we're proud of

We were able to build a wordmap based on the results from the APIs to effectively display the data and create a functioning web application using Flask. None it is hardcoded and it works for any user input.

What we learned

We learned more about integrating APIs, building a simple web app, and discovering the advantages vs disadvantages of using Flask and Django.

What's next for Tsensum

Increase the functionality of web application and improve the weighting system on the wordmap. An idea to extend Tsensum is to provide businesses with recommendations based on related keyword searches.

Built With

Share this project: