Skip to content

CodeForPhilly/prevention-point

Repository files navigation

description
Civic Tech Projects with Prevention Point

Prevention Point Philadelphia is a private nonprofit organization providing harm reduction services to Philadelphia and the surrounding area.

Currently, they are storing data from their programs in separate Excel spreadsheets, disparate EHRs, and partner data systems. This prevents them from being able to see all activities associated with an individual program participant, and also makes it impossible for them to do meaningful analyses that monitor program health and evaluate efforts.

This project would work to migrate all of the disparate data sources into one system, make a UI that allows Prevention Point to access all participant data in one system, and increase the ease with which program coordinators can evaluate and monitor activities.

Before Contributing:

This is a Code for Philly project operating under their code of conduct.

Getting Started

Instructions on how to run the project outside of a container.

Back-end

pipenv sync
  • Activate virtualenv
pipenv shell
  • Start the postgres database container
docker-compose up -d db
  • Migrate the database
python manage.py migrate
  • Seed the database:
python manage.py seed
  • Create a superuser:
python manage.py createsuperuser
  • Start the app:
python manage.py runserver 0.0.0.0:8000
  • Now you can:
    • Navigate to the django admin page at localhost:8000/admin
    • Connect to the running postgres instance
$ docker-compose exec db psql -U postgres
  • Shut down the app:
$ docker-compose down

Front-end

  • Make sure you have node (>=10.15.3) and yarn (>=1.15.2) installed
  • From the project's root directory, cd frontend
  • Run yarn to install dependencies
  • Run yarn dev and navigate to localhost:1234

For more information on the front-end please see the front-end README

Scripts

Instructions on running the project inside docker.

This project implements the Scripts To Rule Them All interface for developers:

  • script/server — Brings a fully working environment up at localhost:8080
  • script/setup — Run after script/server to initialize local database with seed data
  • script/update — Run after changing code or switching branches to refresh server

Other tools

Links

Wiki (This includes our branching practices)

Milestones

MVP Tracker

Slack Channel #preventionpoint #prevpoint-frontend #prevpoint-backend #prevpoint-pairing

Google Drive