Citygram is a geographic notification platform designed to work with open government data. It allows residents to designate area(s) of a city they are interested in and subscribe to one or more topics. When an event for a desired topic occurs in the subscriber's area of interest, a notification (email, SMS, or webhook) is delivered. Citygram is a Code for America project by the Charlotte and Lexington teams for the 2014 fellowship.
We believe that there is an opportunity to help residents better understand what’s going on in their area, when it’s going to happen, and why. By providing timely information to residents in areas that are relevant to them, the city can be proactive instead of reactive, build trust through transparency, and increase civic engagement across the board.
See the contributors list.
Citygram is a web application written in Ruby.
- Web: Sinatra, Grape, Sprockets
- Web server: Unicorn
- Database/models: PostgreSQL, PostGIS, Sequel
- Job Queue: Redis, Sidekiq
- Tests: RSpec, FactoryGirl, Rack::Test
- Install Redis -
brew install redis
- Install PostgreSQL
- Install Ruby
In the command line, run the following:
git clone https://github.com/codeforamerica/citygram.git
cd citygram
cp .env.sample .env
gem install bundler
bundle install
rake db:create db:migrate
rake db:create db:migrate DATABASE_URL=postgres://localhost/citygram_test
rake # run the test suite
bundle exec rackup
To boot up the complete application and run background jobs in development:
bundle exec foreman start -f Procfile.dev