A project to automate expunging qualifying criminal records. This project is done in conjunction with the Multnomah County Public Defender's Office.
Fork, and clone the repo.
- Install the pipenv package manager which also automatically creates and manages virtual environments.
A Makefile controls installing dependencies, running the Flask app, and removing build artifacts:
- Install dependencies:
$ make install
Pipfile and install listed Python packages into a
- Run Flask app (also installs dependencies):
$ make run
will run the
Flask app inside a
$ make clean
will remove build artifacts.
Currently using pytest for testing.
Run all tests with the following command:
$ make test
.flaskenv: Environment variables read by
flask command-line interface via python-dotenv
Makefile: GNU Makefile controlling installing dependencies and running the application
Pipenv file listing project dependencies
config: Project configuration files
doc: Developer-generated documentation
python-dotenv configuration file
src: Source dir
src/backend/expungeservice/app.py: Flask application
- Fork the repo on GitHub
- Clone the project to your own machine. Replacing YOUR-USERNAME with your github username.
$ git clone https://github.com/YOUR-USERNAME/recordexpungPDX.git
- cd into recordexpungPDX
$ cd recordexpungPDX
- Configure upstream to sync with your fork
$ git remote add upstream https://github.com/CodeForPortland/recordexpungPDX.git
- Create a branch to work on. Replacing BRANCH_NAME with a descriptive name of the work planned such as
$ git checkout -b BRANCH_NAME
- Commit changes to your branch (never to master)
- Push your work back up to your fork
$ git push
- NOTE: The first time you do
git pushon your branch it will error with:
fatal: The current branch BRANCH_NAME has no upstream branch. To push the current branch and set the remote as upstream, use git push --set-upstream origin BRANCH_NAME
- Copy the output and run it. Then afterwords simply push more commits by running
- Submit a Pull request
- NOTE: For future contributions be sure to sync master with upstream
$ git checkout master $ git pull upstream master $ git checkout -b BRANCH_NAME
TODO: Add license