Skip to content

pattrn-project/pattrn

Repository files navigation

Pattrn

Pattrn is a web platform for data-driven, participatory fact mapping. Its focus is on rapid deployment in the following contexts:

  • conflict monitoring
  • investigative journalism
  • human rights
  • citizen science
  • research and analysis

Quick start

For researchers and data scientists

Please see the Pattrn user manual: https://docs.pattrn.co/getting-started/index.html

For developers

Pattrn can be built via Gulp from its source tree; this allows to easily and automatically package together the Pattrn app and the data you wish to visualise, if this is packaged as a Pattrn data package.

In order to build Pattrn from source, you will need Node.js (the current Node.js LTS release is recommended as Pattrn is mainly developed and tested with this version) and Yarn.

In order to build Pattrn:

  • Clone this repository or download a Pattrn v2.0 release as zip or tar.gz file

  • Install all the required Node packages:

yarn install

  • Modify the source-data-packages.json file (which is configured to use a sample dataset) to instruct the Pattrn build script to download and use the Pattrn data package configured; the content of this file should be as in the following example (replace pattrn-data-where-the-drones-strike with the name of your Pattrn data package, if using a different one):
{
  "source_data_packages": [
    {
      "package": "pattrn-data-where-the-drones-strike",
      "source": "https://gitlab.com/pattrn-data/pattrn-data-where-the-drones-strike.git#pattrn-data"
    }
  ]
}
  • Build the Pattrn application: this will download and use the data package configured in the previous step, and build all the assets needed for the live Pattrn instance:

yarn run gulp build

If you run into a build error related to the node-sass package, running yarn install --force && yarn run gulp build should fix the issue (see sass/node-sass#1579 (comment) for details).

  • Start a local web server to test the Pattrn app:

yarn start

This command will display some messages while the web server is started, such as:

> [email protected] start /root/pattrn
> http-server dist/

Starting up http-server, serving dist/
Available on:
  http:127.0.0.1:8080
  http:10.2.200.149:8080
Hit CTRL-C to stop the server

You can now open the Pattrn app in a web browser; if no other service is using port 8080 on the computer, the address to use will be http://localhost:8080. If the messages above include a number other than 8080 (e.g. 8081), change the address accordingly (e.g. http://localhost:8081).

Authors and contributors

The PATTRN project was initiated thanks to a Proof-of-Concept Grant from the European Research Council, awarded to Prof. Eyal Weizman, in the framework of Forensic Architecture (2014-2015).

Pattrn v2.0

Pattrn v1.0

All new contributors to the PATTRN project will be duly credited.

License

Pattrn is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Pattrn is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with Pattrn. If not, see http://www.gnu.org/licenses/.