Project

General

Profile

Software

Gisaf (for, eg, GIS Auroville Front-end) is a web application that is under development.

User manual
Server
Client
Stack
Mapbox
Font
Live
Performance
APIs

Database

Gisaf uses a Postgis database.

Creation

To create an appropriate database, run these commands:

createuser avgis -P
createdb avgis -O avgis
psql avgis -c "CREATE EXTENSION postgis;" 

Notes

The geometry features' metadata MUST be set with the proper SRID, which can be tricky. See below.

Import files

Development

See the README file

Build frontend (Angular)

Generating the build is straightforward:

cd gisaf-app
ng build --prod

For the record, there was a bug (Angular build or plotly), now fixed (https://github.com/plotly/angular-plotly.js/issues/15), that forced to build the web application (browser side) with:

cd gisaf-app
ng build --prod --build-optimizer=false --vendor-chunk

In practice, because the resources on the VM of the server are limited (memory), one might just build on the development machine (eg. my laptop) and rsync the build directory.

Plugins

Gisaf can load models in external plugins. See plugins.

Configuration

Short version: when the server starts, it reads the configuration from /etc/gisaf/prod.yml.

Longer version:

The configuration is found from (in order):

  • $HOME/.local/gisaf/prod.yml
  • /etc/gisaf/prod.yml
  • <gisaf_source_dir>/gisaf/default.yml

The configuration files are relatively easy to understand, and grow with the development and list of features supported by Gisaf.

Map

The default view of the map can be configured in the gisaf yaml config, eg:

map:
  openMapTilesKey: cS3lrAfYXoM4MDooT6aS
  zoom: 14
  pitch: 45
  lat: 12.0000
  lng: 79.8106
  bearing: 0
  style: OSM (vector)
  opacity: 0.3
  tilesUrl: /tiles/data/india-vector.json

Production

Gisaf reads the file /etc/gisaf/prod.yml at boot.

Development

Gisaf reads the ~/.gisaf/prod.yml file at boot.

Third party

TileServer

Serve the vector tiles for mapbox-gl locally: TileServer

Alternative: see #6907