Home

Awesome

Codacy Badge Build Status Stories in Ready bitHound Score Coverage Status

README

csWeb, or the Common Sense Web application, is an intuitive open source web-based GIS application, providing casual users as well as business analysists and information manageners with a powerful tool to perform spatial analysis. It has a strong focus on usability and connectivity, be it connecting and sharing information with other users or connecting to services or calculation simulations and models. LIVE DEMO

Features

Technical overview

Technically, we use the following frameworks:

How do I get set up?

The application is written in Typescript, which compiles to regular JavaScript, and further uses Angularjs as the framework, Leaflet and Cesium for rendering maps, d3 and others. A detailed guide is provided here, a concise installation checklist here.

This repository consists of several project folders. The most important ones are csComp, a library containing client side functionality, and csServerComp, for server side components. Both libraries generate a JavaScript file that can be used by the actual map application which you can find in the example folder.

Deployment instructions

Just copy the example folder to a public folder and open the public\index.html file in that folder.

Using Docker containers

There are two types of docker containers built for CommonSense:

tnocs/csWeb-demo

This container runs whole csWeb application. To run it and access csWeb in the web browser at <port> run:

# replace <port> with the port number you want to access csWeb at
docker run -d -p 3002:<port> tnocs/csWeb-demo

If your're using docker running in your system (Linux), application should be avaiilable at localhost, otherwise when using docker-machine, you can ask about ip address with docker-machine ip default (in case your vm with docker is named default).

tnocs/csWeb-dev

This container is meant to run csWeb build in the docker container istread of local machine. csWeb local repository will be mounted inside the container and the build process will happen inside the container. This is usefull in at least two cases.

Run container from within csWeb directory:

docker run -it --rm -p 3002:<port> -v $PWD:/app/ tno/csWeb-dev /bin/bash

Contribution guidelines

Testing

karma start test/karma.conf.js

Who do I talk to?