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).
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
npm install
bower install
grunt serve
npm install
bower install
grunt build
NODE_ENV=production forever -o out.log -e err.log start dist/server.js
npm install
bower install
grunt build
set NODE_ENV=production
forever -o out.log -e err.log start dist/server.js
It may be necessary to rename the folder Ethermap
to ethermap
(note the lower case e), as Docker cannot create things with uppercase names.
docker-compose up
Ethermap will be available from http://localhost:8080
Tests are based on Karma + Jasmine
For single test runs:
grunt test
For continuous testing:
npm install -g karma-cli
karma start
grunt docs
Apache v2.0 - Dennis Wilhelm 2014