Communities from around the world are connected with others in today's globalized Internet...thanks in part to Twitter, Facebook, and other social mediums. People are aware of what happens around the world...but what about within their own community? After all, nations are forged together by the bonds of local communities.
We saw that on Twitter, there is a list of top tweets nationwide and globally; we wondered if we could create a website that sources the top tweets from a user's locality...
What it does
Our project scours the Twitter API (specifically, the Tweepy python framework) for tweets within or close to a user's zip code. These tweets are then displayed in our front-end website for the viewing pleasure (and awareness) of our users!
How we built it
The Backend - Cris and Tony
Python program used the Twitter API to source tweets from a list of keywords we load into it. The keywords represent the major social issues of our times. Once the tweets are sourced they are ported over to another python program for further processing. This Python/Flask program sources tweet posts from a Json formatted input, converts the dict generated by loading the tweets into workable objects from which we could apply our methodologies. Specifically speaking, we sorted the tweet posts by popularity (i.e. # of retweets + # of favorites), obtained the tweet id's which we then load into our web application. Ultimately, the end product is the five most popular posts that relate to a major social issue which is the centerpiece for our web application.
The Frontend - Harish and TJ
The UI is powered with React.js...we created a form that allows users to enter their town. This is then sent to our Flask server, which sends back a resulting JSON with identifiers for locally sourced tweets. This JSON is then used to render tweet components and popular hashtags.
Challenges we ran into
We had a lot of git conflicts where pushes and pulls were conflicting making it very difficult to collaborate on this project. We ran into a lot of problems with the Flask server and the React.js server request.
Accomplishments that we're proud of
We have a nice website that sources popular tweets from around the community and achieves our mission statement. We finished our first hackathon project --- actually, not quite. But we did go far enough!
What we learned
We learned ALOT about Flask, React.js, git, and web development throughout the course of this project. This was the first hackathon project for all of us, and we look back on it with a sense of accomplishment.
What's next for Blue Bird
Better, intuitive UI with dynamic content...more parameters to filter tweets...possibly using natural language processing to conduct sentiment analysis, and possibly also Machine Learning.