Civic Issue Finder
The easiest way to get started with civic hacking. This is a small, embeddable, and customizable web app that makes it easy to find open GitHub Issues from across the civic technology movement. It fetches data from the Code for America API.
How to get your Issues included
- Get your group included on the CfAPI. Don't worry if your group isn't a Brigade. We're glad to have you!
- Ensure your project is included in your group's projects on the CfAPI. Ask your Captain or Delivery Lead how they included projects or check the
projects_list_urlcolumn for your group on the Group Information sheet.
- Create GitHub Issues for your projects. Make sure they are easy to understand. Create and use appropriate GitHub labels. We recommend using "help wanted" whenever it is as we display these issues on the most sites.
- The CfAPI updates once an hour. Check back to see if your Issues appear. Send a message to @ondrae if you need help.
How to Use
The Embed Code
<iframe src="https://www.codeforamerica.org/geeks/civicissues/widget" width="100%" height="600" frameBorder="0"> </iframe>
The url in the
src attribute of the iframe can be given the following query params to customize your widget
organization_name: Only looks for issues of projects in the given organization. The organization has to match a name from the CfAPI. Example:
<iframe src="https://www.codeforamerica.org/geeks/civicissues/widget?organization_name=Code-for-San-Francisco" width="100%" height="600" frameBorder="0"></iframe>
labels: GitHub labels to filter the search by. Example:
<iframe src="https://www.codeforamerica.org/geeks/civicissues/widget?labels=help wanted,enhancement" width="100%" height="600" frameBorder="0"></iframe>
number: The number of issues to show in the widget. Example:
<iframe src="https://www.codeforamerica.org/geeks/civicissues/widget?number=3" width="100%" height="600" frameBorder="0"> </iframe>
Note: On Code for America sites, please include the
tracking=false parameter, so that we don't double up on our Google Analytics page views.
The CFAPI is built on Flask and Python with a
app.py file describes the routes. The
templates have the html.
main.js helps out the embed form.
Set up a Python virtual environment.
Install the required libraries:
pip install -r requirements.txt
Set up a new Postgres database and initialize it from
To run locally:
DATABASE_URLvariables to your environment.
Copyright (c) 2014-2015 Code for America.