Inspiration

We aim to build a humanitarian application that allows the voice of the people to be heard.

What it does

Using the Twitter API, we gather tweets from around the United States, grouped by state, and display the top tweet for each state along with the top categories talked about on twitter. We use NLP techniques to clean and analyze tweets and then group them into categories (health, social, culture, economic) using KMeans clustering.

How we built it

We used Python to interact with the twitter API, as well as to clean the tweets for NLP processes. After cleaning the data, we ranked each tweet by the frequency of keywords in the corpus of words found throughout the tweets. Finally, we display the results (top tweet and categories) in a frontend web interface developed with React.js. This includes using OpenStreetMap to create an interactive map to select the state. Using DBIP API, we calculate the approximate location of the client so that the application loads in the correct US state.

Challenges we ran into

Using the Twitter API was difficult, and we were not able to gather as much data as we would have liked to. Regardingless, we have enough data to display the basic functionality of the app.

Accomplishments that we're proud of

We were able to modify the vision for the project as we ran into problems. We originally had a slightly different direction we wanted to go, however as we encountered problems with the data, we worked as a team to decide the best course of action.

What we learned

We learned how to work with data processed in Python and then load it into a JavaScript frontend, work with the Twitter API efficently to gather quality data, and how to use the DBIP API to approximate the location of the client based on IP address.

What's next for State Speak

After this Hackathon, we would hope to gather more, higher quality Twitter data, as well as develop a pipeline that allows realtime collection of Twitter data when the user interacts with the product.

Built With

Share this project:

Updates