/ground-control

Central volunteer and data portal

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

Ground Control

Ground Control is the campaign's central platform for creating, managing, and increasing turnout to events. It contains several key tools used every day by campaign volunteers and staff:

  • An administrative interface for editing and approving events
  • An event creation tool
  • Call and email tools for event hosts to increase turnout
  • A constituent lookup tool for administrative use
  • A constituent event dashboard to allow uploading of data files for review by our data team

Getting Started

OS X

In OS X, we currently run everything locally using a Procfile and node-foreman. To get started, install Node.js 5.x and Homebrew. Then clone this repository and cd into ground-control. Then do the following:

npm install
./setup-osx

Then you should be able to start Ground Control on http://localhost:3000 with

npm run dev

Windows & Linux

On Linux, follow the same directions as OS X above, but substitute ./setup-linux for the equivalent OS X script.

You will also need to have Docker and docker-compose installed to provide your database.

Environment Variables

You can find environment defaults in .env.sample. The first time a setup script is run, .env will be generated with these defaults.

If you ever need to generate a missing .env, run

npm run gen-env

Contributing Stories in Ready Stories in Ready

Want to help out? You can jump right in to see issues that are ready to be tackled by looking at the status-ready issue label. If you are just getting started with the project, also check out the newbie-friendly label.

You can also see an overview of where all of our issues stand at https://waffle.io/Bernie-2016/ground-control

We use Gitflow to accept pull requests. To submit a change:

  1. Fork the project to your own GitHub account (click "Fork" on the project page in GitHub)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

For code review and discussion, ping @jlegrone on the berniebuilders slack.

More Info

Read our wiki for more guidance on development and other FAQs.

Contribution Activity

Throughput Graph

License

This project is licensed under AGPL.