/ukis-frontend-libraries

A collection of angular ui-components, services, interfaces... to help you create geospatial mapping applications for the web.

Primary LanguageTypeScriptApache License 2.0Apache-2.0

UKIS Logo Frontend Libraries for DLR UKIS (Map) Applications

CI Npm Package Package Version DOI

About the UKIS Frontend?

The project Environmental and Crisis Information Systems (UKIS - the German abbreviation for Umwelt- und Kriseninformationssysteme) aims at harmonizing and simplifying the development of geospatial web information systems by setting up a framework of modularized and generalized software components. UKIS is divided into the open source UKIS Frontend (dlr-eoc/ukis-frontend-libraries) for the visualization of geodata on the web and a UKIS backend that provides geodata through web services and analysis functionalities. Some of these backend services are also open source.

The UKIS Frontend is a combination of multiple open source software libraries and frameworks to simplify the rapid creation of intuitive geospatial web apps. This is achieved as follows: Specification of a consistent user interface using the Clarity Design System with many UI components and styling guidelines. Web standards such as component-based development, single-page application routing, client-server communication, and tools to build, test, and update the software using the Angular development platform. Visualization of geodata using the mapping library OpenLayers, making it possible to integrate all kinds of data and standards such as those from OGC. An abstraction layer for the mapping library describes all types and interfaces, so that it is possible to integrate other mapping libraries using the same UI components. Furthermore, there are utility functions, components for map controls and tools as well as interfaces to OGC standards.

UKIS is developed at the German Remote Sensing Data Center (DFD), an institute at the German Aerospace Center (DLR). Examples of past and current developments based on UKIS are in the context of natural hazards (e.g. for floods, forest fires, tsunami), environmental monitoring (e.g. for snow cover, coastal usage, land cover), civil security (e.g. maritime surveillance, ship detection, ice monitoring), health applications (e.g. COVID-19) as well as planetary sciences (e.g. planetary geology).

Demos

Example map demos: The application for projects/demo-maps (GitHub Pages)

Projects on stackblitz

To use the libraries in your angular application, you can either use the packaged npm modules or include this repository.

Libraries/packages and demo applications can be found in the projects folder.

Here are a few examples:

Getting Started (setup a new UKIS-Client)

  1. Generate a new Angular application in the same Version like specified in our package.json @angular/core. For this you have to install @angular/cli in this specific Version first.
  • npm install -g @angular/cli@<version>

Then run:

  • ng new project-<name> --style=scss
  1. Move into the directory
  • cd project-<name>
  1. Add Clarity Angular
  1. Run the ng add command for the UKIS core-ui
  1. See layout structure of the core-ui

  2. See clarity get-started to use their components

More detailed information about setting up a local UKIS application can be found in the tutorial document.

Team

The UKIS team creates and adapts libraries which simplify the creation of web-based applications. Our team includes (in alphabetical order):

  • Angermann, Lucas
  • Böck, Mathias
  • Friedemann, Monika
  • Jaspersen, Verena
  • Keim, Stefan
  • Langbein, Michael
  • Mandery, Nico
  • Mühlbauer Martin
  • Riedlinger, Torsten
  • Voinov, Sergey
  • Volkmann, Rouven

Licenses

This software is licensed under the Apache 2.0 License.

Copyright (c) 2020 German Aerospace Center (DLR) * German Remote Sensing Data Center * Department: Geo-Risks and Civil Security

Changelog

Learn about the latest changes and features.

Contributing

The UKIS team welcomes contributions from the community. For more detailed information, see our guide on contributing and development if you're interested in getting involved.