Reference project for hypothetical GIS web classroom course Goals Display OSM and custom WMTS map layers on OpenLayers map Import GeoJSON layer from public source and display regional boundaries Interact with vector objects on the map Display "resources" dots from separate source on map (wfs layers) Add "incident" dots on map through UI (e.g. "delivery order") Interact with "incidents" Add "point-of-interest" per "incident" (e.g. "pickup", e.g. "drop-off") Show and hide layers on demand Advanced features Use web sockets and offline storage to interact with "resources", "incidents" and "points-of-interest" Use offline storage to cache WMTS layers Multiple projections (one per WMTS layer) Plan of attack Create Maven project Add jetty Create npm project Add parcel + react + openlayers Add jetty autoloader Show openlayers map with OSM Find user position Remember current position in sessionStorage and localStorage Add WMTS layer from Norwegian source Import geojson layer and serve from Jetty Overlay when geojson layer clicked Info-display when overlay is clicked Clickaway overlay on other interaction TODO: Experiment with overlays