.TECH DOMAIN: tweetair.tech


As first hand witnesses of the effects of the California Wildfires, we witnessed our schools being arbitrarily closed, and we noticed a lack of understanding throughout our community regarding air quality and what it really meant. The closest explanation that anyone could give us about the air quality was that it was "unhealthy". Well, we knew it was unhealthy, but HOW unhealthy. When we researched online, all we received was a number, which nobody really understood. We agree that the number is important, but we need something more than a number regarding air quality, we need something more qualitative. So we created TweetAir, an all-in-one quantitative and qualitative air quality monitoring solution.

What it does

TweetAir aggregates air quality data from various quantitative and qualitative sources including AirNow.gov and Twitter. It provides the user with a full fledged summary of the air quality around him or her, using raw data from multiple sources and performing sentiment analysis on tweets.

How we built it

Frontend was handlebars view engine and backend was express. Our app's live tweet functionality used socket.io. To run sentiment analysis, we used a node.js library that helped us compare with word lists and analyze total sentiment. We used google maps to construct the heatmap with our data and mongodb to store all our tweets. The app was hosted on Heroku and we had a .tech domain.

Challenges I ran into

The rate limiting of Twitter was a difficult challenge, as when our app had, too simultaneous users, the twitter API would give an error and make us wait for 15 minutes due to its rate limiting. We fixed this by creating multiple Twitter Apps from different accounts to quadruple our request limit.

Accomplishments that I'm proud of

Getting around the the rate limiting of Twitter's API by using multiple api keys from different accounts. Getting the heatmap to work in Google Maps. Getting Sentiment analysis to work.

What I learned

Sentiment Analysis and more experience in NodeJS and MongoDB

What's next for TweetAir

We can branch this idea to more weather events, like storms and hurricanes.

Built With

Share this project: