Project

General

Profile

Wiki » History » Version 39

Philippe May, 17/06/2019 15:46

1 3 Philippe May
h1. Software
2 1 Philippe May
3 15 Philippe May
Gisaf (for, eg, GIS Auroville Front-end) is a web application that is under development.
4 1 Philippe May
5 27 Philippe May
[[User manual]]
6 2 Philippe May
[[Server]]
7 2 Philippe May
[[Client]]
8 1 Philippe May
[[Stack]]
9 15 Philippe May
[[Mapbox]]
10 38 Philippe May
[[Live]]
11 37 Philippe May
[[Performance]]
12 3 Philippe May
13 7 Philippe May
h2. Database
14 7 Philippe May
15 7 Philippe May
Gisaf uses a Postgis database.
16 1 Philippe May
17 9 Philippe May
h3. Creation
18 9 Philippe May
19 9 Philippe May
To create an appropriate database, run these commands:
20 9 Philippe May
<pre>
21 9 Philippe May
createuser avgis -P
22 9 Philippe May
createdb avgis -O avgis
23 9 Philippe May
psql avgis -c "CREATE EXTENSION postgis;"
24 9 Philippe May
</pre>
25 9 Philippe May
26 9 Philippe May
h3. Notes
27 9 Philippe May
28 7 Philippe May
The geometry features' metadata MUST be set with the proper SRID, which can be tricky. See below.
29 7 Philippe May
30 3 Philippe May
h3. Import files
31 5 Philippe May
32 16 Philippe May
33 8 Philippe May
h2. Development
34 8 Philippe May
35 8 Philippe May
See the README file
36 22 Philippe May
37 35 Philippe May
h2. Build frontend (Angular)
38 35 Philippe May
39 1 Philippe May
40 39 Philippe May
Generating the build is straightforward:
41 39 Philippe May
42 1 Philippe May
<pre>
43 35 Philippe May
cd gisaf-app
44 39 Philippe May
ng build --prod
45 36 Philippe May
</pre>
46 36 Philippe May
47 39 Philippe May
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:
48 36 Philippe May
49 1 Philippe May
<pre>
50 1 Philippe May
cd gisaf-app
51 39 Philippe May
ng build --prod --build-optimizer=false --vendor-chunk
52 36 Philippe May
</pre>
53 39 Philippe May
54 39 Philippe May
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.
55 35 Philippe May
56 34 Philippe May
h2. Plugins
57 34 Philippe May
58 34 Philippe May
Gisaf can load models in external plugins. See [[plugins]].
59 34 Philippe May
60 22 Philippe May
h2. Configuration
61 22 Philippe May
62 22 Philippe May
TODO: more about parameters of the conf file
63 22 Philippe May
64 22 Philippe May
h3. Map
65 22 Philippe May
66 22 Philippe May
The default view of the map can be configured in the gisaf yaml config, eg:
67 22 Philippe May
68 22 Philippe May
<pre>
69 22 Philippe May
map:
70 22 Philippe May
  openMapTilesKey: cS3lrAfYXoM4MDooT6aS
71 22 Philippe May
  zoom: 14
72 22 Philippe May
  pitch: 45
73 22 Philippe May
  lat: 12.0000
74 22 Philippe May
  lng: 79.8106
75 22 Philippe May
  bearing: 0
76 22 Philippe May
  style: OSM (vector)
77 22 Philippe May
  opacity: 0.3
78 22 Philippe May
  tilesUrl: /tiles/data/india-vector.json
79 22 Philippe May
</pre>
80 22 Philippe May
81 22 Philippe May
h3. Production
82 22 Philippe May
83 22 Philippe May
Gisaf reads the file @/etc/gisaf/prod.yml@ at boot.
84 22 Philippe May
85 22 Philippe May
86 22 Philippe May
h3. Development
87 22 Philippe May
88 22 Philippe May
Gisaf reads the @~/.gisaf/prod.yml@ file at boot.
89 22 Philippe May
90 22 Philippe May
91 22 Philippe May
h2. Third party
92 22 Philippe May
93 22 Philippe May
h3. TileServer
94 22 Philippe May
95 32 Philippe May
Serve the vector tiles for mapbox-gl locally: [[ TileServer ]]
96 33 Philippe May
97 33 Philippe May
Alternative: see #6907