Mapping Piracy Web Application - Formerly known as MPMAP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Mapping Piracy Web Application - Formerly known as MPMAP


This project is a tool that allows the user to filter, map, and see trends from a dataset of ~7000 maritime piracy incidents dating back to 1993.

##Up and running

If you need/want to work on this project, or just run it locally on your machine:

  1. Requirements
  • Nodejs
  • A web browser
  • Internet connection
  1. Clone or fork and clone this repository to your local machine.
  2. Install the node packages:

npm install

  1. Launch the local development server:


  1. (optional) To build the project (create templates, concatenate, minify, inject):

gulp build

  1. Push/copy the project to any webserver that can serve static content.

##Implementation / Technical

###Tools - Frontend This is essentially a front-end only app, in that it requires no server. The application is build using AngularJS, along with several other libraries:

  • Angular UI Bootstrap - used for controls, i.e. typeahead filtering
  • jQuery - required for UI Bootstrap
  • cosmo styles
  • Leaflet - used for mapping
  • nvD3 - used for the specific line-chart graph for data analysis
  • D3.js - required by nvd3
  • moment.js - used for date/time parsing, this will probably be taken out eventually
  • modernizer and webshims - used to polyfill the calendar-style date-selector in older browsers

###Tools - Data This implementation of the application uses Google Docs Spreadsheets as its source for data. This is implemented with:

###Application Structure //TODO

###Adding Data Sources //TODO

###Prior Implementations This project is on its third iteration in terms of the technical implementation. The prior implementations have been phased out, but the source code is still available:

  • MPMAP using Java Play Framework - phased out ~February 2015 b/c the Play Framework was complete overkill for this type of application.
  • MPMAP using SailsJS - phased out ~August 2015 to eliminate the need for a backend-server and make data updates and changes simpler via Google Docs Spreadsheets.