A simple web application that allows a city's Department of Public Health to monitor city food-borne-illness-releated tweets, and respond in such a way that facilitates the submission of a 311 report.
For Chicago, FoodBorne uses several services, including Chicago's Open 311, Twitter, and a hosted MongoDB service which classifies tweets as food-borne-illness related. To setup a development environment, you will need to obtain api keys for Open 311 and Twitter, as well as MongoDB credentials from the Smart Chicago Collaborative.
Once you have obtained the necessary keys and credentials, copy the contents of config/settings.yml.example
into a new file named config/settings.yml
, and fill in the necessary information.
Next, to make Foodborne appropriate for your city, copy the contents of config/localization.yml.example
into a new file named config/localization.yml
, and fill in the necessary information. If your city has an API endpoint similar to Chicago's Open 311 API, fill that in here. Afterwards, when committing to your own repository, you'll likely want to remove the listing of this file in .gitignore
.
The live Chicago site is hosted on Heroku, and can be found at https://www.foodbornechicago.org/. All api keys are set and retrieved using Heroku's config variables.
There are two, namespaced rake tasks for fetching tweets:
Pulls from a dummy @foodpoisonuser Twitter account.
rake fetch:twitter
Pulls from the MongoDB classifier. As mentioned above, you will need credentials provided by the Smart Chicago Collaborative.
rake fetch:classifier
Interface with Mongo classifier to find tweets from any city.