annotate README.md @ 4359:057787583b12

client: add showNumbers option to AvailableFairwayDepthLNWL * Add code similiar to AvailableFairwayDepth.vue, but slightly different because the bars are drawn differently. Each draw function uses its own method to select the svg elements to modify.
author Bernhard Reiter <bernhard@intevation.de>
date Mon, 09 Sep 2019 17:03:27 +0200
parents ab08a74ad2f4
children 0bfecb6beda1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1262
f370ce6eab65 add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents: 1009
diff changeset
1 # Workingtitle "gemma"
f370ce6eab65 add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents: 1009
diff changeset
2
f370ce6eab65 add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents: 1009
diff changeset
3 //"gemma" is just a temporary title and is likely to be changed.//
f370ce6eab65 add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents: 1009
diff changeset
4
1263
00a38b354ab7 improve licening info in README.md
Bernhard Reiter <bernhard@intevation.de>
parents: 1262
diff changeset
5
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
6 # Quick Start
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
7
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
8 ## Build
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
9
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
10 - To build all components of gemma, simply type `make` on the top
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
11 level directory of the repro.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
12
1009
76e9296d6191 added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents: 615
diff changeset
13 - To build all components of gemma, with client in demo mode, use `make demo`.
76e9296d6191 added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents: 615
diff changeset
14
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
15 - To only (re)build the back end you can use `make gemma`.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
16
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
17 - To only build the SPA-Client you can use `make client`.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
18
1009
76e9296d6191 added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents: 615
diff changeset
19 - To only build the SPA-Client in demo mode you can use `make clientdemo`.
76e9296d6191 added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents: 615
diff changeset
20
291
9d6ba97a31d2 Moved development infos to separate file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 272
diff changeset
21 For further details see [docs/DEVELOPMENT](docs/DEVELOPMENT.md),
9d6ba97a31d2 Moved development infos to separate file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 272
diff changeset
22
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
23
4117
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
24 ## Running Tests
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
25
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
26 - Running database tests:
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
27
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
28 * You will need a PostgreSQL cluster with PostGIS and pgTAP.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
29 * To run the tests use the script `./schema/run_tests.sh`.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
30 * `./schema/run_tests.sh --help` shows you available options.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
31 Per default the script will create (and drop if it already exists)
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
32 a database named "gemma_test" and all necessary roles in the postgres
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
33 default cluster (listening on port 5432) and run the tests
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
34 in that database.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
35 * The script must be run as a user with PostgreSQL super user rights.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
36 By convention this is "postgres" on most systems.
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
37
ab08a74ad2f4 Document how to run database tests
Tom Gottfried <tom@intevation.de>
parents: 1390
diff changeset
38
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
39 ## Setup Database
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
40
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
41 - You will need a PostgreSQL cluster with PostGIS.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
42
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
43 - To install the **gemma** schema and roles use the script
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
44 `./schema/install-db.sh`.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
45
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
46 - `./schema/install-db.sh --help` shows you available options.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
47 Per default the script will create a database named "gemma" and all
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
48 necessary roles in the postgres default cluster (listening on port
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
49 5432).
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
50
272
5ee0edc01a18 Small typo fix.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 266
diff changeset
51 - The script must be run as a user with PostgreSQL super user rights.
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
52 By convention this is the "postgres" on most systems.
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
53
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
54
610
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
55 ## Setup GeoServer
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
56
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
57 - Install and run GeoServer as described here:
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
58 http://docs.geoserver.org/stable/en/user/installation/
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
59
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
60 - Add tables you want to publish as OGC-Service Layers via GeoServer in
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
61 the database. For example publish the bottleneck areas:
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
62 ```
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
63 INSERT INTO sys_admin.published_services (name, as_wfs) VALUES
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
64 ('waterway.bottlenecks', true);
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
65 ```
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
66 In case your gemma is already running (see next section), restart it.
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
67 Published WFS services will be available at `/api/internal/wfs`. Currently,
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
68 the same layers will also be available as WMS services at
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
69 `/api/internal/wms`, regardless of the value of `as_wms` in
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
70 `sys_admin.published_services`.
f62ee9d5bff1 Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents: 481
diff changeset
71
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
72 ## Running gemma
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
73
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
74 - Best is to create a configuration file. Copy the example from
481
d68dfbe768e2 Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents: 479
diff changeset
75 `example_conf.toml` to get started:
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
76 ```
481
d68dfbe768e2 Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents: 479
diff changeset
77 cp example_conf.toml gemma.toml
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
78 ```
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
79
387
0f78b13f4a9a (minor) Fix typo in README.
Bernhard Reiter <bernhard@intevation.de>
parents: 330
diff changeset
80 - Edit `gemma.toml`, some parameters you probably want to change:
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
81
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
82 * `host` and `port` to make gemma listen on a public interface
481
d68dfbe768e2 Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents: 479
diff changeset
83 * `metamorph-db-password` to match the password for your database user
d68dfbe768e2 Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents: 479
diff changeset
84 * `geoserver-url`, `geoserver-user` and `geoserver-password` to match
d68dfbe768e2 Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents: 479
diff changeset
85 your instance of GeoServer
266
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
86
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
87 - `./cmd/gemma/gemma -h` gives you an overview of more available
a2f7049daf7f Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents: 206
diff changeset
88 options.
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
89
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
90 - Then start gemma:
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
91 ```
479
fce16726f51d Add missing command
Tom Gottfried <tom@intevation.de>
parents: 434
diff changeset
92 ./cmd/gemma/gemma
330
fd04bccae6ca Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents: 291
diff changeset
93 ```
615
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
94
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
95 ## Proxying OGC services through gemma
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
96
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
97 - Add services you want to publish via gemma (e.g. for same-origin policy
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
98 compliance reasons) in the database. For example:
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
99 ```
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
100 INSERT INTO sys_admin.external_services (local_name, remote_url, is_wfs)
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
101 VALUES ('d4d', 'https://service.d4d-portal.info/wamos/wfs', true);
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
102 ```
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
103 In case your gemma is already running (see previous section), restart it.
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
104 The services will be available at `/api/external/${local_name}`, thus in
4ffdb922db44 Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents: 610
diff changeset
105 the example given above: `/api/external/d4d`.
1390
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
106
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
107 # License
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
108
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
109 //gemma// source code itself licenses as Free Software
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
110 under GNU Affero GPL v>=3. See the particular source files
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
111 for details, the license itself can be found in the directory `LICENSES`.
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
112
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
113 To build a complete product, a number of other Free Software components
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
114 are used, which have their own licenses.
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
115
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
116 To get an overview about the components which are partly included
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
117 in the resulting production ready-product for the `client/`
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
118 use `yarn licenses`, e.g. like
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
119
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
120 ```sh
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
121 yarn licenses list | grep '^├─ '
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
122 ```
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
123
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
124 Additionally inspect `3rdpartylibs.sh` for Go components used
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
125 for the middleware and their licenses.
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
126
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
127 # Credits
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
128
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
129 Exclusive usage rights
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
130 (we are in Europe, so it is not Common-law's "copyright"):
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
131 via donau – Österreichische Wasserstraßen-Gesellschaft mbH, Austria
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
132
69e0b75c0cc8 Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1271
diff changeset
133 Software-Engineering: Intevation GmbH, Germany