Coder Social home page Coder Social logo

timble / openpolice-platform Goto Github PK

View Code? Open in Web Editor NEW
18.0 9.0 8.0 35.37 MB

An open source web publishing platform for police forces.

Home Page: https://www.timble.net/platform/open-police/

License: GNU Affero General Public License v3.0

Ruby 0.20% JavaScript 20.15% PHP 66.79% CSS 12.48% Shell 0.17% HTML 0.19% Nginx 0.03%
open-government open-data php agplv3 government open-source foss police web-platform cms

openpolice-platform's Introduction

Screenshot

Open Police

Open Police is an open source web publishing platform for police forces. It makes creating an open, modern, affordable, website to better connect with citizens very easy.

It uses a component based architecture. Written in PHP, HTML, CSS and Javascript. Made by passionate open source technologists and built on a purely free and open source software stack.

Check our demo website or visit our project's website.

Features

  • Mobile-First responsive design
  • Optimized for performance and security
  • Features a component based architecture
  • Dynamic and cascading HMVC
  • Level 3 JSON REST API

Discover all features.

Used by

Open Police v2 is being used by the Belgian local and federal police.

A few live websites (in dutch or french):

Installation

You can run the project easily with the supplied Vagrantfile - make sure you understand what Vagrant is.

  • Install Composer
  • Install VirtualBox
  • Install Vagrant
  • Clone this repository
  • Go to the repository folder and bootup the server
    $ vagrant up
    
  • Add the following line to your hosts file
    192.168.52.10 police.dev phpmyadmin.police.dev
    
  • You can now access the sample site at police.dev

Access

Theme development

We are using Grunt to automate repetitive tasks like Sass compilation, synchronised browser testing, etc.

  • Install Bower
  • Install Yarn
  • Go to the repository folder and install the dependencies:
    yarn install
    
  • Finally run Grunt
    grunt
    

Vagrant command-line interface

You can use the following commands to manage the server:

  • vagrant up to initially start the server
  • vagrant ssh to SSH into the running Vagrant machine
  • vagrant reload reboots the server
  • vagrant halt powers the server down
  • vagrant suspend & vagrant resume to make the server sleep/wake up
  • vagrant destroy to stop and destroy all resources of the server

More information about the Vagrant command-line interface can be found at docs.vagrantup.com.

Secure Shell

You can use the following commands to manage the platform:

  • police reinstall to re-create the sample site.

First use the Vagrant command-line interface to access the Secure Shell: vagrant ssh.

Database migrations

Database migrations are being managed using Phpmig.

The Vagrant box will setup everything for you. To make sure you have applied the latest database changes, browse to cd scripts/phpmig and execute bin/phpmig migrate.

To see a list of all migrations and their status, run bin/phpmig status. Use the bin/phpmig up <migration ID>and bin/phpmig down <migration ID> commands to apply or undo specific migrations.

For more information, please refer to the Phpmig GitHub page.

How to contribute?

Check our contributing guide.

License

The files in this archive are released under the AGPLv3 license. You can find a copy of this license in LICENSE.

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.