As of 12/31/2020, this project as detailed in the README has been sunsetted, and a new product is currently underway. We still welcome volunteers to join us and you can find more information about this project, and Open Seattle here.
Automating conviction vacation in King County.
One in four Washingtonians have been involved in the criminal justice system. Those with a criminal record face significant barriers to daily life after completing their prison terms, making it harder to find housing and employment, to gain professional credentials, and to be involved in the life of their community.
Washington State’s New Hope Act makes it easier for people with past criminal records to have their convictions vacated. Yet the system is slow and inefficient. We have identified opportunities to use technology to streamline this process, and want to explore which of these technological possibilities would make the most sense to prototype, given user needs and volunteer resources.
To benefit individuals with criminal convictions and decrease lifelong “collateral consequences.” We have identified the first product we hope to ship to the KCBA to help automate the process for record clearance (a pain point and manual process for lawyers): a conviction eligibility calculator.
We look forward to collaborating with you.
Currently the entire system is a single page application that runs on GitHub Pages and uses React. In this future this may change as we add more features and develop the system further but this works well for now.
In the project directory, you can run:
-
Ensure you have
nodejs
installed on your machine using whatever system package manager, on Mac using homebrew run:brew install nodejs
-
Install project dependecies
npm install
-
Start the app in development mode
npm start
-
Visit http://localhost:3000 to view it in the browser
A developer workflow using Docker can be done by building the image locally or pulling from Docker Hub.
This image should be for development only and should not be used in production.
-
Ensure you have
docker
installed on your machine. Refer to the Docker install instructions for more information. -
Pull the image from Docker Hub
docker pull openseattle/convictionvacation:0.0.1
-
Test that this image works on your machine - run the image and expose port 3000
docker run -p 3000:3000 openseattle/convictionvacation:0.0.1
Note: Environment variables can be added with a
-e
flag for advanced configurations -
Visit http://localhost:3000 to view it in the browser
-
Once you've verified this image will work, shut down the container by hitting
Ctl-C
in the active terminal window or viewing all running containers withdocker ps -a
thendocker stop <container_name>
-
To enable hot reloading, regenerate
node_modules
and run the image with your local repo mounted into the container.cd /path/to/convictionvacation docker run -v `pwd`:/root -p 3000:3000 openseattle/convictionvacation:0.0.1 npm install # this command will likely take a minute docker run -v `pwd`:/root -p 3000:3000 openseattle/convictionvacation:0.0.1
Note: Windows users will need to escape the path (See this comment. The commands may take a few minutes.
docker run -v //$(pwd):/root -p 3000:3000 openseattle/convictionvacation:0.0.1 npm install docker run -v //$(pwd):/root -p 3000:3000 openseattle/convictionvacation:0.0.1
Launches the test runner in the interactive watch mode.
See the section about running tests
for more information.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
Confirm the Docker container is running docker ps -a
.
The output should show the container status:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d38d26e6cd69 test:latest "docker-entrypoint.s…" 12 seconds ago Up 11 seconds 0.0.0.0:3000->3000/tcp blissful_meitner
Under NAMES
generated by docker, find the running container and open a shell:
docker exec -it blissful_meitner /bin/sh
- Fork the repo.
- Create your feature branch
git checkout -b feature/your-feature-name
- Commit your changes
git commit -m "commit message describing your changes"
- Push your changes to your feature branch
git push origin feature/your-feature-name
- Open a Pull Request
Find more information about this project, and Open Seattle here.
Distributed under the MIT License. See LICENSE for more information.