diff --git a/.gitignore b/.gitignore
index a48cf0de7af6613887a8f33ce5957001234ac817..d6ac840735cc545a4924ad2097d29a76c4098da8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
+node_modules
public
+resources
diff --git a/assets/css/_fonts.scss b/assets/css/_fonts.scss
new file mode 100644
index 0000000000000000000000000000000000000000..78028140854375d9d36cc1270e316a310f65c7a9
--- /dev/null
+++ b/assets/css/_fonts.scss
@@ -0,0 +1,35 @@
+@font-face {
+ font-family: 'Quicksand';
+ font-style: normal;
+ font-weight: 400;
+ src: local(''),
+ url('../fonts/quicksand-v21-latin-regular.woff2') format('woff2'),
+ url('../fonts/quicksand-v21-latin-regular.woff') format('woff');
+}
+
+@font-face {
+ font-family: 'Quicksand';
+ font-style: normal;
+ font-weight: 700;
+ src: local(''),
+ url('../fonts/quicksand-v21-latin-700.woff2') format('woff2'),
+ url('../fonts/quicksand-v21-latin-700.woff') format('woff');
+}
+
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'),
+ url('../fonts/open-sans-v17-latin-regular.woff2') format('woff2'),
+ url('../fonts/open-sans-v17-latin-regular.woff') format('woff');
+}
+
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 700;
+ src: local('Open Sans Bold'), local('OpenSans-Bold'),
+ url('../fonts/open-sans-v17-latin-700.woff2') format('woff2'),
+ url('../fonts/open-sans-v17-latin-700.woff') format('woff');
+}
diff --git a/assets/css/_variables.scss b/assets/css/_variables.scss
new file mode 100644
index 0000000000000000000000000000000000000000..28826c7a936266c47575cd29b5a0175c8cd7116a
--- /dev/null
+++ b/assets/css/_variables.scss
@@ -0,0 +1,9 @@
+$font-family-common: 'Quicksand', sans-serif;
+$font-family-content: 'Open Sans', sans-serif;
+$main-color: #fe8e04;
+$secondary-color: #879bd3;
+$base-color: #31363b;
+$font-color: #fff;
+$font-color-secondary: #000;
+$link-color: #879bd3;
+$max-width: 960px;
diff --git a/assets/css/components/_content.scss b/assets/css/components/_content.scss
new file mode 100644
index 0000000000000000000000000000000000000000..4b3c1ce1b51df3969b8d6dc36e86be8cf788c0c9
--- /dev/null
+++ b/assets/css/components/_content.scss
@@ -0,0 +1,34 @@
+body {
+ background-repeat: no-repeat;
+ background-attachment: fixed;
+ background-size: 100%;
+
+ &.frontpage,
+ &.text {
+ background-image: url(/images/background.jpg);
+ }
+
+ main {
+ margin-top: 500px;
+
+ h2 {
+ max-width: $max-width;
+ margin: 0 auto;
+
+ &:not(:first-of-type) {
+ margin-top: 50px;
+ }
+ }
+
+ .wrapper {
+ box-shadow: -2px -3px 10px $base-color, 2px -3px 10px $base-color;
+ background-color: $base-color;
+ padding-bottom: 50px;
+ }
+ }
+}
+
+.wrapper p,
+.wrapper .line-block {
+ padding: 10px 20px;
+}
diff --git a/assets/css/components/_footer.scss b/assets/css/components/_footer.scss
new file mode 100644
index 0000000000000000000000000000000000000000..0baa4560a07f572a1746da55d4205814c7edf34e
--- /dev/null
+++ b/assets/css/components/_footer.scss
@@ -0,0 +1,51 @@
+footer {
+ color: $font-color-secondary;
+
+ a {
+ color: $font-color-secondary;
+ }
+
+ ul {
+ list-style-type: none;
+ bottom: 10px;
+ right: 10px;
+ text-align: right;
+ padding: 60px 20px 30px 20px;
+ margin: 0;
+ }
+
+ .wrapper {
+ background-color: $secondary-color;
+ margin: 0 auto;
+ }
+}
+
+div.attribution {
+ display: none;
+ position: fixed;
+ background-color: $base-color;
+ color: $font-color;
+ font-weight: bold;
+ border-radius: 10px;
+ border: 2px solid $main-color;
+ bottom: 10px;
+ right: 35px;
+ padding: 10px;
+
+}
+
+a:hover.attribution-toggle+div.attribution {
+ display: block;
+}
+
+a.attribution-toggle {
+ position: fixed;
+ bottom: 10px;
+ right: 10px;
+}
+
+@media screen and (max-width: 980px) {
+ a.attribution-toggle {
+ display: none;
+ }
+}
diff --git a/assets/css/components/_header.scss b/assets/css/components/_header.scss
new file mode 100644
index 0000000000000000000000000000000000000000..cf782ba625fae4596d1fd7646919a14f92ff45ef
--- /dev/null
+++ b/assets/css/components/_header.scss
@@ -0,0 +1,49 @@
+header {
+ height: 80px;
+ background-color: $base-color;
+ position: fixed;
+ width: 100%;
+ box-shadow: 0px 3px 10px $base-color;
+
+ #logo {
+ float: left;
+ margin-top: 10px;
+
+ h1 {
+ margin-left: 55px;
+ margin-top: 13px;
+ font-size: 24px;
+ }
+
+ img {
+ float: left;
+ height: 48px;
+ width: 48px;
+ }
+ }
+
+ nav {
+ float: right;
+ margin-top: 18px;
+
+ ul {
+ list-style-type: none;
+ padding-top: 10px;
+
+ li {
+ float: left;
+ padding: 0 10px;
+ border-right: 1px solid #bbb;
+
+ &:last-child {
+ border-right: none;
+ }
+ }
+ }
+ }
+
+ a {
+ color: $font-color;
+ font-weight: bold;
+ }
+}
diff --git a/assets/css/components/_map.scss b/assets/css/components/_map.scss
new file mode 100644
index 0000000000000000000000000000000000000000..34a2433acacd0ea69f1ccc83963d937e8aa8bbdf
--- /dev/null
+++ b/assets/css/components/_map.scss
@@ -0,0 +1,9 @@
+#map {
+ position: absolute;
+ top: 80px;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ width: 100%;
+
+}
diff --git a/assets/css/main.scss b/assets/css/main.scss
new file mode 100644
index 0000000000000000000000000000000000000000..84f4ffc9d522e8e9870cf5037ec229bb790880e3
--- /dev/null
+++ b/assets/css/main.scss
@@ -0,0 +1,85 @@
+@import "fonts";
+@import "variables";
+@import "components/header";
+@import "components/content";
+@import "components/map";
+@import "components/footer";
+
+html,
+body,
+img,
+div,
+ul,
+li,
+span,
+p,
+h1,
+h2,
+h3,
+h4,
+h5,
+form,
+dl,
+dt,
+dd,
+button {
+ margin: 0;
+ padding: 0;
+ border: 0;
+}
+
+html,
+body {
+ overflow-x: hidden;
+}
+
+body {
+ background-color: $base-color;
+ color: $font-color;
+ font-family: $font-family-content;
+ font-size: 15px;
+ margin: 0;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+nav,
+footer a {
+ font-family: $font-family-common;
+}
+
+h2 {
+ background-color: $main-color;
+ color: $font-color-secondary;
+ font-size: 1.2em;
+ margin-top: 0;
+ padding: 20px;
+}
+
+a {
+ color: $link-color;
+ text-decoration: none;
+}
+
+table {
+ border-collapse: collapse;
+}
+
+table,
+th,
+td {
+ border: 1px solid #666;
+ padding: 5px;
+}
+
+th {
+ text-align: left;
+}
+
+.wrapper {
+ max-width: $max-width;
+ margin: 0 auto;
+}
diff --git a/assets/js/main.js b/assets/js/main.js
new file mode 100644
index 0000000000000000000000000000000000000000..a06d623150430c12cdc400f8aab3de4c75d00592
--- /dev/null
+++ b/assets/js/main.js
@@ -0,0 +1,54 @@
+maplibregl.accessToken = "access_token";
+const map = new maplibregl.Map({
+ container: "map",
+ style: {
+ version: 8,
+ name: "OBM Tiles Completeness",
+ metadata: {
+ "maputnik:renderer": "mbgljs",
+ },
+ center: [23.7, 37.95],
+ zoom: 13,
+ sources: {
+ obm_tiles: {
+ type: "vector",
+ url:
+ "https://tiles.inspect.openbuildingmap.org/info/obm_tiles_assessments.tiles.json",
+ },
+ "carto-light": {
+ type: "raster",
+ tiles: [
+ "https://a.basemaps.cartocdn.com/light_all/{z}/{x}/{y}@2x.png",
+ "https://b.basemaps.cartocdn.com/light_all/{z}/{x}/{y}@2x.png",
+ "https://c.basemaps.cartocdn.com/light_all/{z}/{x}/{y}@2x.png",
+ "https://d.basemaps.cartocdn.com/light_all/{z}/{x}/{y}@2x.png",
+ ],
+ },
+ },
+ sprite: "",
+ glyphs:
+ "https://orangemug.github.io/font-glyphs/glyphs/{fontstack}/{range}.pbf",
+ layers: [
+ {
+ id: "carto-light-layer",
+ source: "carto-light",
+ type: "raster",
+ minzoom: 1,
+ maxzoom: 22,
+ },
+ {
+ id: "tiles-line",
+ type: "line",
+ source: "obm_tiles",
+ "source-layer": "obm_tiles",
+ paint: {
+ "line-opacity": 0.2,
+ "line-color": "rgba(98, 91, 91, 1)",
+ "line-width": 1,
+ },
+ },
+ ],
+ id: "obm_tiles",
+ },
+});
+map.addControl(new maplibregl.NavigationControl());
diff --git a/config.toml b/config.toml
index 828dabc67a0297e215f0f5e95ab47aa5c1f38edd..ae97955ea1e7f82da36a7632eaff0e7439d05e40 100644
--- a/config.toml
+++ b/config.toml
@@ -1,6 +1,19 @@
baseURL = "https://new.openbuildingmap.org/"
languageCode = "en-us"
title = "OpenBuildingMap"
+disableKinds = ["taxonomy","taxonomyTerm","sitemap"]
+
[params]
author = "Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ"
description = "A building-focused window to OpenStreetMap"
+
+[markup.goldmark.renderer]
+ unsafe= true
+
+[module]
+ [[module.mounts]]
+ source = "static"
+ target = "static"
+ [[module.mounts]]
+ source = "node_modules/maplibre-gl/dist"
+ target = "static/js/maplibre-gl"
diff --git a/content/_index.md b/content/_index.md
index a56c80a799d3948bfc825c22406e6c791610de2a..51a2bc249269d611430ac00cac9e32b8b4f86696 100644
--- a/content/_index.md
+++ b/content/_index.md
@@ -11,7 +11,7 @@ OpenBuildingMap offers you standardized and extended information from the most v
We continuously consume data from [OpenStreetMap](https://openstreetmap.org), cleanse it, process additional building attributes and make the results available to you.
-## Map
+## Map {id="map-title"}
The map is work in progress.
diff --git a/content/contact.md b/content/contact.md
new file mode 100644
index 0000000000000000000000000000000000000000..69fb13e2514d3bf5ba98bb074c4269c6b9824a17
--- /dev/null
+++ b/content/contact.md
@@ -0,0 +1,21 @@
+---
+title: "Contact"
+date: 2021-04-21T00:00:00Z
+draft: false
+---
+
+## Contact
+
+Email: contact@openbuildingmap.org\
+Fediverse: [@openbuildingmap](https://en.osm.towm/@openbuildingmap)
+
+## Imprint & V.i.S.d.P.
+
+Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ
+
+Dr. Danijel Schorlemmer\
+Helmholtzstraße 6\
+14467 Potsdam
+
+Phone: +49 331 288-1207\
+Email: danijel.schorlemmer@gfz-potsdam.de
diff --git a/content/copyright.md b/content/copyright.md
new file mode 100644
index 0000000000000000000000000000000000000000..ba91b0b6e195e08094eec46755726d3a430e3ea3
--- /dev/null
+++ b/content/copyright.md
@@ -0,0 +1,17 @@
+---
+title: "Copyright"
+date: 2021-04-21T00:00:00Z
+draft: false
+---
+
+## Copyright
+
+All content, unless otherwise noted, is copyrighted by:
+
+© [Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ](https://www.gfz-potsdam.de/en/), 2021.
+
+Map data can be used under the terms of the [Open Data Commons Open Database License - ODbL](https://opendatacommons.org/licenses/odbl/index.html).
+
+Please attribute any map or data as:
+
+Data: © [OpenStreetMap](https://openstreetmap.org) © [OpenBuildingMap](http://openbuildingmap.org)
diff --git a/content/maps.md b/content/maps.md
new file mode 100644
index 0000000000000000000000000000000000000000..58020c871b2b57efcaea24898eebb1f9232ebc38
--- /dev/null
+++ b/content/maps.md
@@ -0,0 +1,9 @@
+---
+title: "Maps"
+date: 2021-04-22T00:00:00Z
+draft: false
+layout: "maps"
+---
+
+
+
diff --git a/content/privacy.md b/content/privacy.md
new file mode 100644
index 0000000000000000000000000000000000000000..e0630052cdadaccd626dd7dcabfe5baf7b78b239
--- /dev/null
+++ b/content/privacy.md
@@ -0,0 +1,9 @@
+---
+title: "Privacy"
+date: 2021-04-21T00:00:00Z
+draft: false
+---
+
+## Privacy
+
+We do not track you! This website does not set cookies. There are no libraries, media, or web fonts hosted by third parties, and you won't find any social networking buttons. It has no analytics and all server logs contain only anonymized IP addresses by default.
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html
index eb2b2f1c2385b2735b67ef12104d566628210f69..184cf0b087a21fcfed59a31e84095f0156566baa 100644
--- a/layouts/_default/baseof.html
+++ b/layouts/_default/baseof.html
@@ -2,8 +2,9 @@
{{ block "head" . }}{{ partial "head" . }}{{ end }}
-
+
{{ block "header" . }}{{ partial "header" . }}{{ end }}
{{ block "main" . }}{{ end }}
+ {{ block "footer" . }}{{ partial "footer" . }}{{ end }}
diff --git a/layouts/_default/index.html b/layouts/_default/index.html
index 032cc7e46857f4bd30534afede84b320f02932eb..67ebe05e4b4f76674bea9aa8980b178cd2dca9f8 100644
--- a/layouts/_default/index.html
+++ b/layouts/_default/index.html
@@ -1,5 +1,9 @@
{{ define "main" }}
- {{ .Content }}
+
+ {{ .Content }}
+
{{ end }}
+
+{{ define "bodyclasses" }}frontpage{{ end }}
diff --git a/layouts/_default/maps.html b/layouts/_default/maps.html
new file mode 100644
index 0000000000000000000000000000000000000000..dd99b4fed7794925c712d5ba3ea1cc7893ac1141
--- /dev/null
+++ b/layouts/_default/maps.html
@@ -0,0 +1,10 @@
+{{ define "main" }}
+
+ {{ .Content }}
+
+{{ end }}
+
+{{ define "bodyclasses" }}maps{{ end }}
+
+{{ define "footer" }} {{ $javascript := resources.Get "js/main.js" | js.Build "js/main.js" | minify | fingerprint }}
+ {{ end }}
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
new file mode 100644
index 0000000000000000000000000000000000000000..162769e318ec52243b50b5de34324ecd7cb80993
--- /dev/null
+++ b/layouts/_default/single.html
@@ -0,0 +1,9 @@
+{{ define "main" }}
+
+
+ {{ .Content }}
+
+
+{{ end }}
+
+{{ define "bodyclasses" }}text{{ end }}
diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdcbae2290ae238457d4a03186ec615b76c6207b
--- /dev/null
+++ b/layouts/partials/footer.html
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/layouts/partials/head.html b/layouts/partials/head.html
index fa0cf45ae10dcc1ee48cbce5c9003fc3b48761ec..9e2747286eaccac1917773c77a55bb90e915441e 100644
--- a/layouts/partials/head.html
+++ b/layouts/partials/head.html
@@ -12,4 +12,8 @@
+ {{ $style := resources.Get "css/main.scss" | toCSS | minify | fingerprint }}
+
+
+
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000000000000000000000000000000000000..3e94a2a79aebac8c8f7a4d3da92bcd3ac0e4dd2e
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,618 @@
+{
+ "name": "openbuildingmap-website",
+ "version": "0.0.2",
+ "lockfileVersion": 2,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "openbuildingmap-website",
+ "version": "0.0.2",
+ "license": "AGPL-3.0",
+ "dependencies": {
+ "maplibre-gl": ">=1.14.0"
+ }
+ },
+ "node_modules/@mapbox/geojson-rewind": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.0.tgz",
+ "integrity": "sha512-73l/qJQgj/T/zO1JXVfuVvvKDgikD/7D/rHAD28S9BG1OTstgmftrmqfCx4U+zQAmtsB6HcDA3a7ymdnJZAQgg==",
+ "dependencies": {
+ "concat-stream": "~2.0.0",
+ "minimist": "^1.2.5"
+ },
+ "bin": {
+ "geojson-rewind": "geojson-rewind"
+ }
+ },
+ "node_modules/@mapbox/geojson-types": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz",
+ "integrity": "sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw=="
+ },
+ "node_modules/@mapbox/jsonlint-lines-primitives": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz",
+ "integrity": "sha1-zlblOfg1UrWNENZy6k1vya3HsjQ=",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/@mapbox/mapbox-gl-supported": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz",
+ "integrity": "sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==",
+ "peerDependencies": {
+ "mapbox-gl": ">=0.32.1 <2.0.0"
+ }
+ },
+ "node_modules/@mapbox/point-geometry": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz",
+ "integrity": "sha1-ioP5M1x4YO/6Lu7KJUMyqgru2PI="
+ },
+ "node_modules/@mapbox/tiny-sdf": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz",
+ "integrity": "sha512-cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw=="
+ },
+ "node_modules/@mapbox/unitbezier": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz",
+ "integrity": "sha1-FWUb1VOme4WB+zmIEMmK2Go0Uk4="
+ },
+ "node_modules/@mapbox/vector-tile": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz",
+ "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==",
+ "dependencies": {
+ "@mapbox/point-geometry": "~0.1.0"
+ }
+ },
+ "node_modules/@mapbox/whoots-js": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz",
+ "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
+ },
+ "node_modules/concat-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
+ "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
+ "engines": [
+ "node >= 6.0"
+ ],
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.0.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "node_modules/csscolorparser": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz",
+ "integrity": "sha1-s085HupNqPPpgjHizNjfnAQfFxs="
+ },
+ "node_modules/earcut": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.2.tgz",
+ "integrity": "sha512-eZoZPPJcUHnfRZ0PjLvx2qBordSiO8ofC3vt+qACLM95u+4DovnbYNpQtJh0DNsWj8RnxrQytD4WA8gj5cRIaQ=="
+ },
+ "node_modules/geojson-vt": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz",
+ "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg=="
+ },
+ "node_modules/gl-matrix": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.3.0.tgz",
+ "integrity": "sha512-COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA=="
+ },
+ "node_modules/grid-index": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz",
+ "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA=="
+ },
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "node_modules/kdbush": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz",
+ "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew=="
+ },
+ "node_modules/mapbox-gl": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.1.tgz",
+ "integrity": "sha512-GSyubcoSF5MyaP8z+DasLu5v7KmDK2pp4S5+VQ5WdVQUOaAqQY4jwl4JpcdNho3uWm2bIKs7x1l7q3ynGmW60g==",
+ "peer": true,
+ "dependencies": {
+ "@mapbox/geojson-rewind": "^0.5.0",
+ "@mapbox/geojson-types": "^1.0.2",
+ "@mapbox/jsonlint-lines-primitives": "^2.0.2",
+ "@mapbox/mapbox-gl-supported": "^1.5.0",
+ "@mapbox/point-geometry": "^0.1.0",
+ "@mapbox/tiny-sdf": "^1.1.1",
+ "@mapbox/unitbezier": "^0.0.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "@mapbox/whoots-js": "^3.1.0",
+ "csscolorparser": "~1.0.3",
+ "earcut": "^2.2.2",
+ "geojson-vt": "^3.2.1",
+ "gl-matrix": "^3.2.1",
+ "grid-index": "^1.1.0",
+ "minimist": "^1.2.5",
+ "murmurhash-js": "^1.0.0",
+ "pbf": "^3.2.1",
+ "potpack": "^1.0.1",
+ "quickselect": "^2.0.0",
+ "rw": "^1.3.3",
+ "supercluster": "^7.1.0",
+ "tinyqueue": "^2.0.3",
+ "vt-pbf": "^3.1.1"
+ },
+ "engines": {
+ "node": ">=6.4.0"
+ }
+ },
+ "node_modules/maplibre-gl": {
+ "version": "1.14.0",
+ "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-1.14.0.tgz",
+ "integrity": "sha512-pqr/nsoZHx1rUY2Bpp0EFVcFVgrVOLkDDh2DhZcLVZVHYXdFOH/LyKUoLZda/3/CDTmlZy9ldJeZN8O0g1Ocpg==",
+ "dependencies": {
+ "@mapbox/geojson-rewind": "^0.5.0",
+ "@mapbox/geojson-types": "^1.0.2",
+ "@mapbox/jsonlint-lines-primitives": "^2.0.2",
+ "@mapbox/mapbox-gl-supported": "^1.5.0",
+ "@mapbox/point-geometry": "^0.1.0",
+ "@mapbox/tiny-sdf": "^1.1.1",
+ "@mapbox/unitbezier": "^0.0.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "@mapbox/whoots-js": "^3.1.0",
+ "csscolorparser": "~1.0.3",
+ "earcut": "^2.2.2",
+ "geojson-vt": "^3.2.1",
+ "gl-matrix": "^3.2.1",
+ "grid-index": "^1.1.0",
+ "minimist": "^1.2.5",
+ "murmurhash-js": "^1.0.0",
+ "pbf": "^3.2.1",
+ "potpack": "^1.0.1",
+ "quickselect": "^2.0.0",
+ "rw": "^1.3.3",
+ "supercluster": "^7.1.0",
+ "tinyqueue": "^2.0.3",
+ "vt-pbf": "^3.1.1"
+ },
+ "engines": {
+ "node": ">=6.4.0"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
+ },
+ "node_modules/murmurhash-js": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz",
+ "integrity": "sha1-sGJ44h/Gw3+lMTcysEEry2rhX1E="
+ },
+ "node_modules/pbf": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz",
+ "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==",
+ "dependencies": {
+ "ieee754": "^1.1.12",
+ "resolve-protobuf-schema": "^2.1.0"
+ },
+ "bin": {
+ "pbf": "bin/pbf"
+ }
+ },
+ "node_modules/potpack": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.1.tgz",
+ "integrity": "sha512-15vItUAbViaYrmaB/Pbw7z6qX2xENbFSTA7Ii4tgbPtasxm5v6ryKhKtL91tpWovDJzTiZqdwzhcFBCwiMVdVw=="
+ },
+ "node_modules/protocol-buffers-schema": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.5.1.tgz",
+ "integrity": "sha512-YVCvdhxWNDP8/nJDyXLuM+UFsuPk4+1PB7WGPVDzm3HTHbzFLxQYeW2iZpS4mmnXrQJGBzt230t/BbEb7PrQaw=="
+ },
+ "node_modules/quickselect": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz",
+ "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw=="
+ },
+ "node_modules/readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/resolve-protobuf-schema": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz",
+ "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==",
+ "dependencies": {
+ "protocol-buffers-schema": "^3.3.1"
+ }
+ },
+ "node_modules/rw": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz",
+ "integrity": "sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q="
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/supercluster": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-7.1.3.tgz",
+ "integrity": "sha512-7+bR4FbF5SYsmkHfDp61QiwCKtwNDyPsddk9TzfsDA5DQr5Goii5CVD2SXjglweFCxjrzVZf945ahqYfUIk8UA==",
+ "dependencies": {
+ "kdbush": "^3.0.0"
+ }
+ },
+ "node_modules/tinyqueue": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
+ "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA=="
+ },
+ "node_modules/typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
+ },
+ "node_modules/vt-pbf": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.1.tgz",
+ "integrity": "sha512-pHjWdrIoxurpmTcbfBWXaPwSmtPAHS105253P1qyEfSTV2HJddqjM+kIHquaT/L6lVJIk9ltTGc0IxR/G47hYA==",
+ "dependencies": {
+ "@mapbox/point-geometry": "0.1.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "pbf": "^3.0.5"
+ }
+ }
+ },
+ "dependencies": {
+ "@mapbox/geojson-rewind": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.0.tgz",
+ "integrity": "sha512-73l/qJQgj/T/zO1JXVfuVvvKDgikD/7D/rHAD28S9BG1OTstgmftrmqfCx4U+zQAmtsB6HcDA3a7ymdnJZAQgg==",
+ "requires": {
+ "concat-stream": "~2.0.0",
+ "minimist": "^1.2.5"
+ }
+ },
+ "@mapbox/geojson-types": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz",
+ "integrity": "sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw=="
+ },
+ "@mapbox/jsonlint-lines-primitives": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz",
+ "integrity": "sha1-zlblOfg1UrWNENZy6k1vya3HsjQ="
+ },
+ "@mapbox/mapbox-gl-supported": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz",
+ "integrity": "sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==",
+ "requires": {}
+ },
+ "@mapbox/point-geometry": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz",
+ "integrity": "sha1-ioP5M1x4YO/6Lu7KJUMyqgru2PI="
+ },
+ "@mapbox/tiny-sdf": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz",
+ "integrity": "sha512-cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw=="
+ },
+ "@mapbox/unitbezier": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz",
+ "integrity": "sha1-FWUb1VOme4WB+zmIEMmK2Go0Uk4="
+ },
+ "@mapbox/vector-tile": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz",
+ "integrity": "sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==",
+ "requires": {
+ "@mapbox/point-geometry": "~0.1.0"
+ }
+ },
+ "@mapbox/whoots-js": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz",
+ "integrity": "sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q=="
+ },
+ "buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
+ },
+ "concat-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
+ "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.0.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "csscolorparser": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz",
+ "integrity": "sha1-s085HupNqPPpgjHizNjfnAQfFxs="
+ },
+ "earcut": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.2.tgz",
+ "integrity": "sha512-eZoZPPJcUHnfRZ0PjLvx2qBordSiO8ofC3vt+qACLM95u+4DovnbYNpQtJh0DNsWj8RnxrQytD4WA8gj5cRIaQ=="
+ },
+ "geojson-vt": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz",
+ "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg=="
+ },
+ "gl-matrix": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.3.0.tgz",
+ "integrity": "sha512-COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA=="
+ },
+ "grid-index": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz",
+ "integrity": "sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA=="
+ },
+ "ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "kdbush": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz",
+ "integrity": "sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew=="
+ },
+ "mapbox-gl": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.1.tgz",
+ "integrity": "sha512-GSyubcoSF5MyaP8z+DasLu5v7KmDK2pp4S5+VQ5WdVQUOaAqQY4jwl4JpcdNho3uWm2bIKs7x1l7q3ynGmW60g==",
+ "peer": true,
+ "requires": {
+ "@mapbox/geojson-rewind": "^0.5.0",
+ "@mapbox/geojson-types": "^1.0.2",
+ "@mapbox/jsonlint-lines-primitives": "^2.0.2",
+ "@mapbox/mapbox-gl-supported": "^1.5.0",
+ "@mapbox/point-geometry": "^0.1.0",
+ "@mapbox/tiny-sdf": "^1.1.1",
+ "@mapbox/unitbezier": "^0.0.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "@mapbox/whoots-js": "^3.1.0",
+ "csscolorparser": "~1.0.3",
+ "earcut": "^2.2.2",
+ "geojson-vt": "^3.2.1",
+ "gl-matrix": "^3.2.1",
+ "grid-index": "^1.1.0",
+ "minimist": "^1.2.5",
+ "murmurhash-js": "^1.0.0",
+ "pbf": "^3.2.1",
+ "potpack": "^1.0.1",
+ "quickselect": "^2.0.0",
+ "rw": "^1.3.3",
+ "supercluster": "^7.1.0",
+ "tinyqueue": "^2.0.3",
+ "vt-pbf": "^3.1.1"
+ }
+ },
+ "maplibre-gl": {
+ "version": "1.14.0",
+ "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-1.14.0.tgz",
+ "integrity": "sha512-pqr/nsoZHx1rUY2Bpp0EFVcFVgrVOLkDDh2DhZcLVZVHYXdFOH/LyKUoLZda/3/CDTmlZy9ldJeZN8O0g1Ocpg==",
+ "requires": {
+ "@mapbox/geojson-rewind": "^0.5.0",
+ "@mapbox/geojson-types": "^1.0.2",
+ "@mapbox/jsonlint-lines-primitives": "^2.0.2",
+ "@mapbox/mapbox-gl-supported": "^1.5.0",
+ "@mapbox/point-geometry": "^0.1.0",
+ "@mapbox/tiny-sdf": "^1.1.1",
+ "@mapbox/unitbezier": "^0.0.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "@mapbox/whoots-js": "^3.1.0",
+ "csscolorparser": "~1.0.3",
+ "earcut": "^2.2.2",
+ "geojson-vt": "^3.2.1",
+ "gl-matrix": "^3.2.1",
+ "grid-index": "^1.1.0",
+ "minimist": "^1.2.5",
+ "murmurhash-js": "^1.0.0",
+ "pbf": "^3.2.1",
+ "potpack": "^1.0.1",
+ "quickselect": "^2.0.0",
+ "rw": "^1.3.3",
+ "supercluster": "^7.1.0",
+ "tinyqueue": "^2.0.3",
+ "vt-pbf": "^3.1.1"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
+ },
+ "murmurhash-js": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz",
+ "integrity": "sha1-sGJ44h/Gw3+lMTcysEEry2rhX1E="
+ },
+ "pbf": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz",
+ "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==",
+ "requires": {
+ "ieee754": "^1.1.12",
+ "resolve-protobuf-schema": "^2.1.0"
+ }
+ },
+ "potpack": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.1.tgz",
+ "integrity": "sha512-15vItUAbViaYrmaB/Pbw7z6qX2xENbFSTA7Ii4tgbPtasxm5v6ryKhKtL91tpWovDJzTiZqdwzhcFBCwiMVdVw=="
+ },
+ "protocol-buffers-schema": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/protocol-buffers-schema/-/protocol-buffers-schema-3.5.1.tgz",
+ "integrity": "sha512-YVCvdhxWNDP8/nJDyXLuM+UFsuPk4+1PB7WGPVDzm3HTHbzFLxQYeW2iZpS4mmnXrQJGBzt230t/BbEb7PrQaw=="
+ },
+ "quickselect": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz",
+ "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw=="
+ },
+ "readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ }
+ },
+ "resolve-protobuf-schema": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz",
+ "integrity": "sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==",
+ "requires": {
+ "protocol-buffers-schema": "^3.3.1"
+ }
+ },
+ "rw": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz",
+ "integrity": "sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q="
+ },
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
+ },
+ "string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "requires": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "supercluster": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/supercluster/-/supercluster-7.1.3.tgz",
+ "integrity": "sha512-7+bR4FbF5SYsmkHfDp61QiwCKtwNDyPsddk9TzfsDA5DQr5Goii5CVD2SXjglweFCxjrzVZf945ahqYfUIk8UA==",
+ "requires": {
+ "kdbush": "^3.0.0"
+ }
+ },
+ "tinyqueue": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
+ "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA=="
+ },
+ "typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
+ },
+ "vt-pbf": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.1.tgz",
+ "integrity": "sha512-pHjWdrIoxurpmTcbfBWXaPwSmtPAHS105253P1qyEfSTV2HJddqjM+kIHquaT/L6lVJIk9ltTGc0IxR/G47hYA==",
+ "requires": {
+ "@mapbox/point-geometry": "0.1.0",
+ "@mapbox/vector-tile": "^1.3.1",
+ "pbf": "^3.0.5"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000000000000000000000000000000000000..591ef535f96f214466565d8d69a6174b5bbc9d0e
--- /dev/null
+++ b/package.json
@@ -0,0 +1,15 @@
+{
+ "name": "openbuildingmap-website",
+ "version": "0.0.2",
+ "description": "Website for the OpenBuildingMap.org",
+ "repository": {
+ "type": "git",
+ "url": "git+https://git.gfz-potsdam.de/dynamicexposure/openbuildingmap/website-obm.git"
+ },
+ "author": "Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ",
+ "license": "AGPL-3.0",
+ "homepage": "https://openbuildingmap.org",
+ "dependencies": {
+ "maplibre-gl": ">=1.14.0"
+ }
+}
diff --git a/src/css/styles.scss b/src/css/styles.scss
new file mode 100644
index 0000000000000000000000000000000000000000..c0544e418e74674aa9b05e63af48e7774f61231b
--- /dev/null
+++ b/src/css/styles.scss
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2021:
+ * Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ
+
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at
+ * your option) any later version.
+
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
+ * General Public License for more details.
+
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see http://www.gnu.org/licenses/.
+ */
+
+$background-color: black;
+$color: white;
+
+body {
+ color: $color;
+ background-color: $background-color;
+}
diff --git a/src/js/index.js b/src/js/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..766a9749af29f9522774679bf162966942bd983d
--- /dev/null
+++ b/src/js/index.js
@@ -0,0 +1,23 @@
+/**
+ * @fileOverview The entry point to the app
+ * @name index.js
+ * @author Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ
+ * @license
+ * Copyright (C) 2021:
+ * Helmholtz-Zentrum Potsdam Deutsches GeoForschungsZentrum GFZ
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see http://www.gnu.org/licenses/.
+ */
+
+console.log('hello world');
diff --git a/static/fonts/open-sans-v17-latin-700.woff b/static/fonts/open-sans-v17-latin-700.woff
new file mode 100644
index 0000000000000000000000000000000000000000..b8b46d0b406e5a1351f2885608bbccb29e7d9cfe
Binary files /dev/null and b/static/fonts/open-sans-v17-latin-700.woff differ
diff --git a/static/fonts/open-sans-v17-latin-700.woff2 b/static/fonts/open-sans-v17-latin-700.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..3a38286c672d781462fb22dc0b27393c8972ad13
Binary files /dev/null and b/static/fonts/open-sans-v17-latin-700.woff2 differ
diff --git a/static/fonts/open-sans-v17-latin-regular.woff b/static/fonts/open-sans-v17-latin-regular.woff
new file mode 100644
index 0000000000000000000000000000000000000000..39e88ed924601b969b06137854f24bf029b6cbb3
Binary files /dev/null and b/static/fonts/open-sans-v17-latin-regular.woff differ
diff --git a/static/fonts/open-sans-v17-latin-regular.woff2 b/static/fonts/open-sans-v17-latin-regular.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..e9f58b775ec05aedecb58eaa34d0fd2a8d5d1aae
Binary files /dev/null and b/static/fonts/open-sans-v17-latin-regular.woff2 differ
diff --git a/static/fonts/quicksand-v21-latin-700.woff b/static/fonts/quicksand-v21-latin-700.woff
new file mode 100644
index 0000000000000000000000000000000000000000..9f91355ef0da4de3fa188cb2d6698714cdab5305
Binary files /dev/null and b/static/fonts/quicksand-v21-latin-700.woff differ
diff --git a/static/fonts/quicksand-v21-latin-700.woff2 b/static/fonts/quicksand-v21-latin-700.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..a4c4103e9c1641888aaa8be90455adfbda2ee667
Binary files /dev/null and b/static/fonts/quicksand-v21-latin-700.woff2 differ
diff --git a/static/fonts/quicksand-v21-latin-regular.woff b/static/fonts/quicksand-v21-latin-regular.woff
new file mode 100644
index 0000000000000000000000000000000000000000..6696a743dc3c13c4ac80d5c18d678c876102648a
Binary files /dev/null and b/static/fonts/quicksand-v21-latin-regular.woff differ
diff --git a/static/fonts/quicksand-v21-latin-regular.woff2 b/static/fonts/quicksand-v21-latin-regular.woff2
new file mode 100644
index 0000000000000000000000000000000000000000..335ba07b2ab01102048a2b948fd28827a4bcee65
Binary files /dev/null and b/static/fonts/quicksand-v21-latin-regular.woff2 differ
diff --git a/static/images/background.jpg b/static/images/background.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..ed3f7b0faf8f772f6b7fa472f6a5c7ab84731a03
Binary files /dev/null and b/static/images/background.jpg differ
diff --git a/static/images/button-info.svg b/static/images/button-info.svg
new file mode 100644
index 0000000000000000000000000000000000000000..c4c13b7e5131c06bfde5c7e1cf3db47be32bf263
--- /dev/null
+++ b/static/images/button-info.svg
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+ i
+
+