Skip to content

Latest commit

 

History

History
110 lines (71 loc) · 2.1 KB

README.md

File metadata and controls

110 lines (71 loc) · 2.1 KB

Ethermap

Ethermap is a real-time collaborative map editor allowing:

  • synchronization of geoobjects between all clients
  • visual highlights of changes creating user-awareness
  • watching other users or show their current workarea
  • basic feature version control (browse older revisions and revert changes)
  • communicating about specific features within the chat

How does it work? shortly explains the overall concept.

For a demo (desktop only), open the website with several browsers log into the same map id with different user names. Or check out the video.

The application has been built as part of my master thesis at the ifgi (Institute for Geoinformatics, WWU Münster).

Technologies

Install dependencies (Ubuntu)

It is assumed that you have installed node.js (developed using 0.10.26)

sudo apt-get install couchdb
npm install -g grunt-cli
npm install -g bower
npm install -g forever

Run for Development

npm install
bower install
grunt serve

Run for Production

npm install
bower install
grunt build
NODE_ENV=production forever -o out.log -e err.log start dist/server.js

or with Docker and fig

It may be necessary to rename the folder Ethermap to ethermap (note the lower case e), as Docker cannot create things with uppercase names.

sudo fig up

Ethermap will be available from http://localhost:8080

Testing

Tests are based on Karma + Jasmine

For single test runs:

grunt test

For continuous testing:

npm install -g karma-cli
karma start

Create the JSDoc pages

grunt docs

License

Apache v2.0 - Dennis Wilhelm 2014