.TECH DOMAIN: tweetair.tech
Inspiration
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
- .tech
- express.js
- google-maps-platform
- handlebars.js
- heroku
- mongodb
- node.js
- sentiment-analysis
- socket.io
Log in or sign up for Devpost to join the conversation.