Giter Club home page Giter Club logo

light-pollution's Introduction

Light Pollution: Click on a U.S. Prosecutor to read their data

light-pollution ๐ŸŒ†

light-pollution is a list of all U.S. prosecutors. It houses local and national prosecutor data in a .JSON masterlist, then displays the information in a simple, clean, and user-friendly website called Light Pollution.

Inspired by John Pfaff's new book, "Locked In," light-pollution has morphed into a community oversight project.


#LadyHacks2017

For LadyHacks, we'll be focusing on the Philadelphia DA candidates in preparation for Tuesday's election:

LadyHacks Agenda

Fork the Repo (tutorial)

Collect relevant data about Philadelphia DA candidates for Tuesday's primary election

Have an idea for the type of data we should collect? Submit an issue!

Potential data we'll be gathering:

  • party affiliation
  • Wikipedia entries
  • Picture (website)
  • News Articles (Google)
  • Office
    • Address
    • Contact
  • Prosecution History
    • This is the hard part, the dataset that hasn't even been conceived of / published. Our brainstorming session last night includes:
      • LexisNexis/WestLawNex
      • Court Records
      • Bar Association
      • Crime Statistics (working backwards)
  • Trend Visualizations
    • Optional

Build an HTML, CSS, and JS page that displays the data

See the tutorial for how to get setup (below).

Create visualizations based on trends in DA candidate data

Optional: D3.js.


Installation

Requirements

Git, Python, and Node (npm, Gulp):

git --version
python --version
node -v
npm install npm@latest -g
npm install --global gulp-cli

If you don't already have a GitHub account, now is the time to sign up.

1. Prepare the repo

Fork the repository.

Change directories to where your clone of the light-pollution repo is located.

2. Switch to the Terminal or Command Prompt to initialize Git

cd path/goes/here/light-pollution

2.1 For people afraid of using Command Prompt / Terminal: Download GitHub Desktop

2.2 For everyone else: Create a local clone of your fork

Clone, Fetch, and Checkout the master branch.

git clone https://www.github.com/[YOUR-USERNAME-HERE]/light-pollution.git
cd light-pollution
git fetch
git checkout master

Make your own branch. Name it after the feature/fix you plan to implement (for example: Update-District-Attorney-websites).

git branch [YOUR-BRANCH-NAME-HERE]
git checkout [YOUR-BRANCH-NAME-HERE]

For a detailed overview of the fork/clone GitHub workflow, view the GitHub tutorial.

3. Install dependencies

In the root of the project, install npm dependencies.

npm install

4. Load site

Boot up a server in the /public directory, then navigate to localhost:8000 in your browser.

cd public
Python -m SimpleHTTPServer

If you're using windows and get an error running SimpleHTTPServer, run python -m http.server, instead.

5. Make changes to the code

You can view the local dev version of light-pollution by going to http://localhost:8000 in your browser.

5.1 Updating individual prosecutor profiles

To update and/or add new information to individual prosecutor pages, edit the related .handlebars template and .json file. (For example: edit templates/attorney-general-profile.handlebars and public/attorney-general/_attorney-general-config.json if you want to change the office hours of an Attorney General.)

5.2 Run Gulp

Build out the website with Gulp. Make sure you're in the root, where the gulpfile.js is located.

gulp handlebars

6. Finished? Just commit and push

git add .
git commit -m "[INSERT YOUR COMMIT MESSAGE HERE (for example: Update index.html: new title)]"
git push origin [YOUR-BRANCH-NAME-HERE]

7. Submit a pull request

Go to the page of your fork on GitHub.

Select your branch and click the pull request button.

Once accepted, your pull request will be merged with the Github Pages branch (gh-pages) and go live on the website.

Light Pollution: a prototype database of all U.S. Prosecutors

Contributors

Created and maintained by @billimarie.

Help Wanted

Contributors of all skill levels warmly encouraged to participate.

There are several areas in need of contributors:

Submit Suggestions, Solutions, or Issues

Before submitting an issue, view all current issues to limit duplicates.

If you discover an unlisted bug, open a new issue.

View the wiki for more information.

light-pollution's People

Contributors

billimarie avatar

Watchers

James Cloos avatar Angela Andrews avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.