Skip to content

Commit f7fc338

Browse files
committed
Merge branch 'develop'
2 parents 16fc7a0 + 567b597 commit f7fc338

File tree

108 files changed

+2026
-3894
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+2026
-3894
lines changed

.bowerrc

-3
This file was deleted.

.gitignore

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/nbproject/
22
/node_modules/
3-
/www/bower_components/
3+
/www/css/
44
/dist/
5-
/build/
5+
/build/
6+
/*.sh

.jshintrc

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
2-
"globalstrict": true,
2+
"globalstrict": false,
3+
"esnext": true,
34
"globals": {
45
"angular": false,
56
"describe": false,
@@ -10,4 +11,4 @@
1011
"module": false,
1112
"inject": false
1213
}
13-
}
14+
}

Dockerfile

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
FROM node
2+
3+
RUN mkdir -p /usr/src/app
4+
WORKDIR /usr/src/app
5+
6+
COPY package.json /usr/src/app/
7+
RUN npm --quiet install --silent --allow-root install && npm --quiet install grunt-cli
8+
9+
COPY . /usr/src/app
10+
11+
RUN ./node_modules/grunt-cli/bin/grunt
12+
13+
EXPOSE 8080
14+
15+
CMD [ "./node_modules/http-server/bin/http-server", "--cors", "-p", "8080", "dist"]

Dockerfile-local

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
FROM nginx
2+
COPY dist /usr/share/nginx/html

Gruntfile.js

+158-122
Large diffs are not rendered by default.

README.md

+106-93
Original file line numberDiff line numberDiff line change
@@ -1,107 +1,120 @@
1-
## Content
2-
This is a frontend component of the repository [sensorweb-client-core] (https://github.com/52North/sensorweb-client-core).
1+
# Helgoland
32

4-
It comprise:
3+
## Description
4+
5+
**Visual Exploration and Analysis of Sensor Web Data**
6+
7+
*This lightweight web application enables the exploration, analysis and visualization of sensor web data in various fields of use, e.g. hydrology, meteorology, environmental monitoring, traffic management.*
8+
9+
Helgoland is a lightweight web application to explore, analyze and visualize a broad range of sensor data. You can:
10+
11+
* explore stations or mobile sensor platforms in a map,
12+
* select time series by a list selection,
13+
* visualize time series data,
14+
* or create favorites of selected time series.
15+
16+
The application is based on HTML, JavaScript and CSS and can connect to different Sensor Web endpoints (REST-APIs). These Sensor Web REST-APIs provide a thin access layer to sensor data via RESTful Web binding with different output formats.
17+
18+
Features:
19+
20+
* access to SOS instances (supports OGC SOS spec...)
21+
* diagram view of multiple time series, temporal zooming & panning...
22+
* data export (pdf, Excel, CSV)
23+
* Combination w/ R...
24+
* Architectural basis: HTML, JavaScript, CSS
25+
26+
The following main frameworks are used to provide this application:
27+
28+
* [AngularJS](https://angularjs.org/)
29+
* [Leaflet](http://leafletjs.com/)
30+
* [Bootstrap](http://getbootstrap.com/)
31+
* [momentJs](http://momentjs.com/)
32+
* [flot](http://www.flotcharts.org/)
33+
34+
## Quick Start (Configuration)
35+
36+
Download the latest version of [Helgoland](https://github.com/52North/helgoland/releases).
37+
38+
* Deploy the war-file of the client in your favorite web container (e.g. tomcat)
39+
* Deploy as a static web page in a web server (e.g. apache)
40+
41+
Configure your client in the settings.json in the root folder. Check this(link) site for the different configuration parameter in the settings.json. The main parameters are:
42+
43+
* `defaultProvider` - this is the default selected provider, when the user starts the client
44+
* `restApiUrls` - this is a list of all supported providers by the client
45+
46+
47+
## License
48+
49+
Helgoland is licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0).
50+
51+
## User guide/tutorial
52+
53+
## Demo
54+
Explore, analyze and visualize sensor web data with our [Helgoland](http://sensorweb.demo.52north.org/client/#/) demo.
55+
56+
<p align="center">
57+
<img src="https://cloud.githubusercontent.com/assets/3830314/15780576/ae8cf458-29a2-11e6-89ef-bc6f1453e38b.png" alt="Helgoland map view" width="75%"/>
58+
<img src="https://cloud.githubusercontent.com/assets/3830314/15780591/bdb9a4a8-29a2-11e6-9938-1717a0e7bb7a.png" alt="Helgoland diagram view" width="75%"/>
59+
</p>
60+
61+
## Changelog
62+
63+
## References
64+
65+
## Contact
66+
<!--<img src="https://avatars1.githubusercontent.com/u/3830314?v=3&s=140" alt="Webpack and Angular 2" width="48" height="48"/>-->
67+
68+
69+
70+
## Credits
71+
72+
## How to contribute
73+
74+
This is a frontend component of the repository [sensorweb-client-core](https://github.com/52North/sensorweb-client-core).
75+
76+
It comprises:
577

678
* the styling files for the client
779
* the templates to define the html structure
880
* the images and fonts which are used in this client
981

10-
## Get the client as war-file
82+
### Requirements to develop or build the client
83+
84+
* git
85+
* [nodejs](https://nodejs.org)
86+
* [npm](https://www.npmjs.com/)
87+
* [grunt](http://gruntjs.com/)
1188

12-
Get a runnable client as war-file of the current development status with the following steps:
89+
### Get ready to start
1390

1491
* `git clone` this repository
1592
* run `npm install` to get all dependencies
93+
94+
#### Get a static files folder which can be added to a web-server
95+
96+
* with `grunt` all files are collected and build in a `dist` folder. The content of this folder can be deployed on a web server.
97+
98+
99+
#### Get the client as war-file
100+
16101
* with `grunt buildWar` you get a war-file in the `build`-directory
17102

18-
## Configuration
19-
20-
You can change the configuration for the client in the `settings.json` in the `www`-folder of the repository. The following configuration are available:
21-
22-
##### `defaultProvider`
23-
24-
```json
25-
"defaultProvider": {
26-
"serviceID": "srv_3dec8ce040d9506c5aba685c9d134156",
27-
"url": "http://sensorweb.demo.52north.org/sensorwebclient-webapp-stable/api/v1/"
28-
}
29-
```
30-
The default selected provider to show stations in the map.
31-
32-
##### `restApiUrls`
33-
34-
```json
35-
"restApiUrls": {
36-
"http://sensorweb.demo.52north.org/sensorwebclient-webapp-stable/api/v1/": "52nSensorweb",
37-
"http://sensorweb.demo.52north.org/sensorwebtestbed/api/v1/": "52nSensorwebTestbed",
38-
}
39-
```
40-
A list of timeseries-API urls and an appropriate identifier to create internal timeseries ids.
41-
42-
##### `supportedLanguages`
43-
44-
```json
45-
"supportedLanguages": [{
46-
"code": "de",
47-
"label": "Deutsch"
48-
}, {
49-
"code": "en",
50-
"label": "english"
51-
}
52-
]
53-
```
54-
These are the supported languages in the client. For every language there must exist a translation file in the i18n folder.
55-
56-
##### `baselayer`
57-
58-
```json
59-
"baselayer": {
60-
"mapbox": {
61-
"name": "Mapbox",
62-
"type": "xyz",
63-
"url": "http://otile1.mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg",
64-
"layerOptions": {
65-
"attribution": "&copy; <a href='http://www.mapquest.com/' target='_blank'>MapQuest</a> <img src='http://developer.mapquest.com/content/osm/mq_logo.png'/>"
66-
}
67-
}
68-
}
69-
```
70-
All configured baselayer can be selected in the map.
71-
72-
##### `overlay`
73-
74-
```json
75-
"overlay": {
76-
}
77-
```
78-
Same effect as the baselayer configuration.
79-
80-
##### `showScale`
81-
82-
```json
83-
"showScale": true
84-
```
85-
Show the scale bar in the map.
86-
87-
##### `commonLineWidth`
88-
89-
```json
90-
"commonLineWidth": 1
91-
```
92-
Common line width of a timeseries in the chart.
93-
94-
##### `selectedLineWidth`
95-
96-
```json
97-
"selectedLineWidth": 4,
98-
```
99-
Line width of a selected timeseries in the chart.
100-
101-
## How to develop
102-
103-
To develop the [sensorweb-client-core] (https://github.com/52North/sensorweb-client-core) and this frontend client components parallel you can use `bower link` as described [here] (https://oncletom.io/2013/live-development-bower-component/)
103+
#### How to develop
104104

105-
## License
105+
See [here](https://github.com/52North/sensorweb-client-core#how-to-develop) for more informations.
106+
107+
#### Configuration
108+
109+
See [here](https://github.com/52North/sensorweb-client-core#configuration)
110+
111+
<!--## Extensions (Backends, etc., z.B. SOS )
112+
## Road Map/development plans (features, focus…)
113+
## Architecture/Design
114+
## JavaDoc
115+
not needed
116+
## XML Schemata
117+
## contributor
118+
see Github...
106119
107-
Licensed under Apache License 2.0
120+
## Requirements-->

bower.json

-37
This file was deleted.

doc/homepage/changelog.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Changelog
2+
3+
TBD

doc/homepage/demo.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Demo
2+
3+
* [client on sensorweb.demo](http://sensorweb.demo.52north.org/client/#/)

doc/homepage/description.md

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Description
2+
3+
Helgoland is a very lightweight web application to explore, analyze and visualize sensor web data. It is based just on HTML, JavaScript and CSS. You can:
4+
5+
- explore stations or mobile sensor platforms in a map
6+
- select time series by a list selection
7+
- visualize time series data
8+
- create favorites of selected time series
9+
10+
The application can be connected to different Sensor Web endpoints (REST-APIs). These Sensor Web REST-APIs provides a thin access layer to sensor data via RESTful Web binding with different output formats.
11+
12+
The following main frameworks are used to provide this application:
13+
14+
- [AngularJS](https://angularjs.org/)
15+
- [Leaflet](http://leafletjs.com/)
16+
- [Bootstrap](http://getbootstrap.com/)
17+
- [momentJs](http://momentjs.com/)
18+
- [flot](http://www.flotcharts.org/)

doc/homepage/gettingStarted.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Getting Started and configuration
2+
3+
* Get the latest Version here(link)
4+
* deploy the war-file of the client in your favorite web container (e.g. tomcat)
5+
* deploy as a static web page in a web server (e.g. apache)
6+
* Configure your client in the settings.json in the root folder. Check this(link) site for the different configuration parameter in the settings.json. The main parameters are:
7+
* `defaultProvider` - this is the default selected provider, when the user starts the client
8+
* `restApiUrls` - this is a list of all supported providers by the client

doc/homepage/license.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# License
2+
3+
The client is published under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0).

doc/homepage/references.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# References
2+
3+
* [Client of the Wupperverband](http://fluggs.wupperverband.de/swc/) - In this project the client look and feel was adjust in cooperation with the Wupperverband and an external design company.

doc/homepage/userGuide.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# User guide/tutorial
2+
3+
TBD

0 commit comments

Comments
 (0)