Project

General

Profile

Wiki » History » Version 42

Giulio Di Anastasio, 04/07/2020 16:43

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 41 Philippe May
[[Font]]
11 38 Philippe May
[[Live]]
12 37 Philippe May
[[Performance]]
13 3 Philippe May
14 42 Giulio Di Anastasio
h2. Connection to server directly from CSR
15 42 Giulio Di Anastasio
To connect to the server directly without going through Aurinoco server, the correct url is
16 42 Giulio Di Anastasio
http://gis.csr.av
17 42 Giulio Di Anastasio
18 7 Philippe May
h2. Database
19 7 Philippe May
20 7 Philippe May
Gisaf uses a Postgis database.
21 1 Philippe May
22 9 Philippe May
h3. Creation
23 9 Philippe May
24 9 Philippe May
To create an appropriate database, run these commands:
25 9 Philippe May
<pre>
26 9 Philippe May
createuser avgis -P
27 9 Philippe May
createdb avgis -O avgis
28 9 Philippe May
psql avgis -c "CREATE EXTENSION postgis;"
29 9 Philippe May
</pre>
30 9 Philippe May
31 9 Philippe May
h3. Notes
32 9 Philippe May
33 7 Philippe May
The geometry features' metadata MUST be set with the proper SRID, which can be tricky. See below.
34 7 Philippe May
35 3 Philippe May
h3. Import files
36 5 Philippe May
37 16 Philippe May
38 8 Philippe May
h2. Development
39 8 Philippe May
40 8 Philippe May
See the README file
41 22 Philippe May
42 35 Philippe May
h2. Build frontend (Angular)
43 35 Philippe May
44 1 Philippe May
45 39 Philippe May
Generating the build is straightforward:
46 39 Philippe May
47 1 Philippe May
<pre>
48 35 Philippe May
cd gisaf-app
49 39 Philippe May
ng build --prod
50 36 Philippe May
</pre>
51 36 Philippe May
52 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:
53 36 Philippe May
54 1 Philippe May
<pre>
55 1 Philippe May
cd gisaf-app
56 39 Philippe May
ng build --prod --build-optimizer=false --vendor-chunk
57 36 Philippe May
</pre>
58 39 Philippe May
59 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.
60 35 Philippe May
61 34 Philippe May
h2. Plugins
62 34 Philippe May
63 34 Philippe May
Gisaf can load models in external plugins. See [[plugins]].
64 34 Philippe May
65 22 Philippe May
h2. Configuration
66 22 Philippe May
67 40 Philippe May
Short version: when the server starts, it reads the configuration from @/etc/gisaf/prod.yml@.
68 1 Philippe May
69 40 Philippe May
Longer version:
70 40 Philippe May
71 40 Philippe May
The configuration is found from (in order):
72 40 Philippe May
73 40 Philippe May
* @$HOME/.local/gisaf/prod.yml@
74 40 Philippe May
* @/etc/gisaf/prod.yml@
75 40 Philippe May
* @<gisaf_source_dir>/gisaf/default.yml@
76 40 Philippe May
77 40 Philippe May
The configuration files are relatively easy to understand, and grow with the development and list of features supported by Gisaf. 
78 40 Philippe May
 
79 40 Philippe May
80 22 Philippe May
h3. Map
81 22 Philippe May
82 22 Philippe May
The default view of the map can be configured in the gisaf yaml config, eg:
83 22 Philippe May
84 22 Philippe May
<pre>
85 22 Philippe May
map:
86 22 Philippe May
  openMapTilesKey: cS3lrAfYXoM4MDooT6aS
87 22 Philippe May
  zoom: 14
88 22 Philippe May
  pitch: 45
89 22 Philippe May
  lat: 12.0000
90 22 Philippe May
  lng: 79.8106
91 22 Philippe May
  bearing: 0
92 22 Philippe May
  style: OSM (vector)
93 22 Philippe May
  opacity: 0.3
94 22 Philippe May
  tilesUrl: /tiles/data/india-vector.json
95 22 Philippe May
</pre>
96 22 Philippe May
97 22 Philippe May
h3. Production
98 22 Philippe May
99 22 Philippe May
Gisaf reads the file @/etc/gisaf/prod.yml@ at boot.
100 22 Philippe May
101 22 Philippe May
102 22 Philippe May
h3. Development
103 22 Philippe May
104 22 Philippe May
Gisaf reads the @~/.gisaf/prod.yml@ file at boot.
105 22 Philippe May
106 22 Philippe May
h2. Third party
107 22 Philippe May
108 22 Philippe May
h3. TileServer
109 22 Philippe May
110 32 Philippe May
Serve the vector tiles for mapbox-gl locally: [[ TileServer ]]
111 33 Philippe May
112 33 Philippe May
Alternative: see #6907