Download the PHP package flexyourrights/openpolice-extension without Composer
On this page you can find all versions of the php package flexyourrights/openpolice-extension. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download flexyourrights/openpolice-extension
More information about flexyourrights/openpolice-extension
Files in flexyourrights/openpolice-extension
Package openpolice-extension
Short Description This package provides a starting point to build country-specific variations of OpenPolice.org.
License GPL-3.0-or-later
Informations about the package openpolice-extension
FlexYourRights/OpenPoliceExtension
Table of Contents
- About
- Requirements
- Getting Started
- Documentation
- Roadmap
- Change Logs
- Contribution Guidelines
- Reporting a Security Vulnerability
About
This package provides a starting point to build variations of OpenPolice.org. Hopefully, you should be able to...
- Make a copy of this repository for your new project
- In you new project, replace all FlexYourRights\OpenPoliceExtension references with your package's primary class name, like MyVendorName\MyOpenPoliceProject"
- Replace all flexyourrights\openpolice-extension references with your package's directory, like my-org-name\my-open-police-project"
OpenPolice.org OpenPolice.org is an open-source, open data web app empowering citizens to prepare, file, and track reports of police conduct. The site helps users submit complaints or commendations to appropriate police oversight agencies. By allowing users to publish reports online, we aim to establish better public transparency and oversight of police activity in the U.S. OpenPolice extends Survloop, which runs atop Laravel.
Requirements
- php: >=7.4
- laravel/laravel: 8.5.*
- rockhopsoft/survloop: >=0.3.*
- flexyourrights/openpolice: >=0.3.*
Getting Started
Installing OpenPolice
Full install instructions also describe how to set up a development environment using VirutalBox, Vargrant, and Laravel's Homestead. For these instructions, the new project directory is 'myopenpolice'.
Install Laravel, Survloop, & OpenPolice on Homestead
Edit these lines of the environment file to connect the default MYSQL database:
Next, install Laravel's out-of-the-box user authentication tools, Survloop, and the OpenPolice.org software:
From your Laravel installation's root directory, update composer.json
to require and easily reference OpenPoliceExtension:
Hopefully, editing config/app.php
is no longer needed, but this can be tried if later steps break.
If installing on a server, you might also need to fix some permissions before the following steps...
Clear caches and publish the package migrations...
With certain databases (like some managed by DigitalOcean), you may need to tweak the Laravel migration:
Add this line before the "Schema::create" line in each file:
Then initialize the database:
And if you want to import our list of United States police departments and zip codes:
Initialize OpenPolice Installation
Then browsing to the home page should prompt you to create the first admin user account:
http://myopenpolice.local
If everything looks janky, then manually load the style sheets, etc:
http://myopenpolice.local/css-reload
After logging in as an admin, this link rebuilds many supporting files:
http://myopenpolice.local/dashboard/settings?refresh=2
Documentation
Once installed, documentation of this system's database design can be found at /dashboard/db/all . This system's user experience design for data entry can be found at /dashboard/tree/map?all=1&alt=1 or publicly visible links like those above.
Better documentation is juuust beginning to be created...
openpolice.org/code-package-files-folders-and-classes
More on the Survloop level is also starting here:
survloop.org/package-files-folders-classes.
Roadmap
Here's the TODO list for the next release (1.0). It's my first time building on Laravel, or GitHub. So sorry.
- [ ] Correct all issues needed for minimum viable product, and launch Open Police Complaints.
- [ ] Integrate options for MFA using Laravel-compatible package.
- [ ] Code commenting, learning and adopting more community norms.
- [ ] Add decent levels of unit testing. Hopefully improve the organization of objects/classes.
Contribution Guidelines
Please help educate me on best practices for sharing code in this community. Please report any issue you find in the issues page.
Reporting a Security Vulnerability
We want to ensure that Open Police Complaints is a secure HTTP open data platform for everyone. If you've discovered a security vulnerability in OpenPolice.org, we appreciate your help in disclosing it to us in a responsible manner.
Publicly disclosing a vulnerability can put the entire community at risk. If you've discovered a security concern, please email us at rockhoppers at runbox.com. We'll work with you to make sure that we understand the scope of the issue, and that we fully address your concern. We consider correspondence sent to rockhoppers at runbox.com our highest priority, and work to address any issues that arise as quickly as possible.
After a security vulnerability has been corrected, a release will be deployed as soon as possible.