Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MapStore, a year in review (FOSS4G 2023 Edition)

MapStore, a year in review (FOSS4G 2023 Edition)

MapStore is an open source product developed for creating, saving and sharing in a simple and intuitive way maps, dashboards, charts and geostories directly online in your browser. MapStore is cross-browser and mobile ready, it allows users to:

- Search and load geospatial content served using widely used protocols (WMS, WFS, WMTS, TMS, CSW) and formats (GML, Shapefile, GeoJSON, KML/KMZ etc..)
- Manage maps (create, modify, share, delete, search), charts, dashboard and stories directly online
- Manage users, groups and their permissions over the various resources MapStore can manage
- Edit data online via WFS-T with advanced filtering capabilities
- Deeply customize the look&feel to follow strict corporate guidelines
- Manage different application contexts through an advanced wizard to have customized WebGIS MapStore viewers for different use cases (custom plugins set, map and theme)

You can use MapStore as a product to deploy simple geoportals by using the standard functionalities it provides but you can also use MapStore as a framework to develop sophisticated WebGIS portals by reusing and extending its core building blocks.

MapStore is built on top of React and Redux and its core does not explicitly depend on any mapping engine but it can support both OpenLayers, Leaflet and Cesium; additional mapping engines could be also supported (for example MapLibre GL) to avoid any tight dependency on a single engine.

This presentation will give the audience an extensive overview of the MapStore functionalities for the creation of mapping portals, covering both previous work as well work for the future releases. Eventually, a range of MapStore case studies will be presented to demonstrate what our clients (like City of Genova, City of Florence, Halliburton, Austrocontrol and more) and partners are achieving with it.
Featur

Simone Giannecchini

November 14, 2023
Tweet

More Decks by Simone Giannecchini

Other Decks in Technology

Transcript

  1. MapStore, a year
    in review
    Stefano Bovio
    GeoSolutions

    View full-size slide

  2. About GeoSolutions

    Founded in late 2006

    Offices in Italy & US

    Supporting/Developing FOSS4G projects
    • MapStore, GeoServer, GeoNode , GeoNetwork, CKAN

    Offer

    Enterprise Support Services

    Deployment Warranty

    Professional Training

    End-To-End Projects (Integration)

    Clients
    • UN FAO (CIOK, FIGIS, NRL, FORESTRY, ESTG), UN WFP, World
    Bank, DLR, EUMETSAT, JRC, NATO CMRE, UNESCO, UNEP, etc..
    • BAYER, DigitalGlobe, MDA, TOPCON, SwissRE, Halliburton, etc..
    • https://www.geosolutionsgroup.com

    View full-size slide

  3. Agenda

    What is MapStore?

    Who uses MapStore?

    MapStore at work

    What’s new in MapStore

    MapStore roadmap for 2023

    View full-size slide

  4. What is MapStore?

    View full-size slide


  5. Create and share maps, charts, dashboards and stories
    online

    Mobile first | Responsive

    Mapping engine agnostic

    OpenLayers|Leaflet|Cesium

    Leveraging React ecosystem

    Pluggable Look & Feel

    Consume data from many sources

    OSM, Bing, WFS, CSW, WMS, WMTS

    License is Simplified BSD

    Commercial friendly!
    What is MapStore?

    View full-size slide

  6. What is MapStore?
    It is a Product
    Use it as is and customize the look & feel

    View full-size slide

  7. It is a Framework
    You can build many different applications with
    its plugins (and by developing your own)
    Event Tracking - Crime Map
    Covid Tracking Map
    What is MapStore?

    View full-size slide

  8. Who uses MapStore?

    View full-size slide

  9. Who uses MapStore?

    Halliburton

    Austrocontrol

    MapStand

    UN FAO

    EMSA

    World Bank (via GeoNode)

    Unesco (via GeoNode)

    EARTH-I

    Arno river basin authority

    Region of Tuscany (Hydrologic Service)

    Region of Tuscany (Urbanistic Department)

    LaMMa

    AtolCD and Compagnie Nationale du Rhône CNR

    City of Munich

    City of Florence

    City of Genova

    City of Bozen

    City of Brussels

    IGB (via GeoNode)

    Rennes Métropole and CRAIG (via geOrchestra)
    clients and users around
    the world!

    View full-size slide

  10. Who uses MapStore?
    Rennes Métropole - geOrchestra
    As part of the geOrchestra platform for disseminating heterogeneous sets of geospatial
    data

    View full-size slide

  11. Who uses MapStore?
    CRAIG - geOrchestra
    As part of the geOrchestra platform for disseminating heterogeneous sets of geospatial
    data

    View full-size slide

  12. Who uses MapStore?
    MapStand
    Platform for tracking of oil and gas energy activities and live geo-tagged news

    View full-size slide

  13. AtolCD and Compagnie Nationale du Rhône
    Who uses MapStore?
    Geospatial data dissemination platform for renewable power from hydroelectric
    facilities on the Rhone

    View full-size slide

  14. Who uses MapStore?
    Austrocontrol
    Geospatial platform providing air navigation services for the control of the Austrian
    airspace

    View full-size slide

  15. Who uses MapStore?
    Arno river basin authority
    Geospatial platform for the geological and hydrogeological assessment in Tuscany

    View full-size slide

  16. Who uses MapStore?
    City of Genoa
    Geoportal for multiple use cases involving the territorial information system of the city
    of Genoa from citizen services to civil protection and the urban planning and mobility

    View full-size slide

  17. MapStore at work

    View full-size slide

  18. MapStore at work
    ● Many features available out-of-the box
    ● Many scenarios are covered
    ● Works with of OGC standards
    ● Easy to set up and configure
    ● Easy to customize and extend
    ● Open Source project
    ● Compatible with the most common browsers: FF, Edge, Chrome
    and Safari
    ● Compatible with mobile devices

    View full-size slide

  19. MapStore Map Viewer: overview
    MapStore at work
    TOC tools
    Layers
    with
    legend
    Backgrounds
    Widgets &
    Charts
    Options
    Sidebar
    Search Tool
    Footer tools Nav toolbar

    View full-size slide

  20. MapStore Dashboard: general overview
    MapStore at work
    Chart
    Widgets
    Counter
    Widget
    Text
    Widget
    Legend
    Widget
    Widget
    menu
    Map
    Widget
    Table
    Widget
    Dashboard
    toolbar

    View full-size slide

  21. MapStore at work
    MapStore GeoStory
    Create inspiring and immersive stories by combining text,
    interactive maps and multimedia content (e.g. images, video or
    other third party content)
    View mode
    Edit mode

    View full-size slide

  22. MapStore at work
    Navigation
    toolbar
    GeoStory
    sections
    Title
    section
    Paragraph
    section
    Media
    section
    Other kind of sections are available, like Maps and Immersive!
    Tell your story with a modern look !

    View full-size slide

  23. MapStore at work
    Build your story by adding different kind of sections, one after
    the other with an advanced web editor:
    • Title/Cover
    • Paragraph
    • Immersive
    • GeoCarousel
    • Media (Map, Image,
    Video)
    • Web Page
    Sections are organized in a continuous
    scrolling layout!

    View full-size slide

  24. MapStore at work
    The Application Context Manager
    is an administrative tool designed
    to build and configure different
    MapStore viewer configurations
    for the same MapStore installation
    A multisteps wizard
    allows the administrator
    to configure a custom
    MapStore viewer

    View full-size slide

  25. MapStore at work
    • Step #1: configure the name of the context and the window
    title
    The Context URL:
    https://mapstore.geosolutionsgroup.com/mapstore/#/context/newyorkcity

    View full-size slide

  26. MapStore at work
    • Step #2: configure the default map state and map contents
    • Layers in TOC
    • Backgrounds
    • Catalog sources
    • CRS
    • Annotations
    • Map Import
    • Map Export

    View full-size slide

  27. MapStore at work
    • Step #3: configure the set of plugins to include in the context
    viewer
    • Select plugins to
    include
    • Configure each
    plugin
    • Make plugins
    ready to be
    activated by users
    on the fly
    • Install a custom
    plugin
    • Direct link to the
    plugin online doc

    View full-size slide

  28. MapStore at work
    • Step #4: customize the Theme of your context
    Yes, you can do it from the User Interface!
    Support to include your own
    theme (via .less file) in the
    build to be available for a
    quick selection in the wizard

    View full-size slide

  29. MapStore at work
    • Step #5: share the context and manage permissions

    View full-size slide

  30. MapStore at work
    Easy to customize and extend: customize the theme and
    develop your own plugins to be uploaded and installed in one
    or more application contexts!
    Cadastrapp
    Urbanisme
    Longitudinal
    Profile

    View full-size slide

  31. For Developers
    MapStore Extensions: leveraging on the Application Context
    system MapStore gives you the ability to build custom
    extensions in a structured and standard way
    • Dedicated repository: so that you can manage versioning and keep your
    extension inline across different versions of MapStore
    • Ready to be installed: following the guidelines your extension can be
    uploaded and installed in a running MapStore instance
    • Well documented: we are trying to keep the online documentation
    always in line at each MapStore release
    • Extension Template: we provided a template project as a quick start to
    encourage developers to use this system and improve it:
    https://github.com/geosolutions-it/MapStoreExtension

    View full-size slide

  32. What’s new in MapStore

    View full-size slide

  33. What’s new in MapStore
    What has been released from the last
    FOSS4G
    ?
    Two major series in the middle:
    2022.02
    Released in Sep 2022 (2 minor releases included)
    2023.01
    Released in Apr 2023 (latest minor release June 21, 2023)
    =
    Lots of new powerful updates!

    View full-size slide

  34. What’s new in MapStore
    Let’s see together the main ones!

    View full-size slide

  35. New with 2022.02 - Improved 3D data handling
    Look at
    https://docs.mapstore.geosolutionsgroup.com/en/v2023.01.02/user-guide/la
    yer-settings/#styling-of-vector-layer
    • Support to WFS layers and imported vector layers (GeoJSON,
    Shapefile…) in 3D mode
    ○ Visualization of 2D and 3D Geometries in 3D mode
    ○ Support to Styling
    ○ Support to Identify

    View full-size slide

  36. New with 2022.02 - Improved 3D data handling
    Points Lines Polygons
    Normalized the UI/UX to
    be in line with the existing
    Visual Style Editor for
    WMS layers
    • Styling properties specific for 3D mode with the inclusion of
    dedicated symbolizers!

    View full-size slide

  37. New with 2022.02 - Improved 3D data handling
    Identify for 3D Tiles and 3D
    vector layers!
    • Enhanced the support for the Identify (click on map) in 3D
    mode according to the camera orientation

    View full-size slide

  38. New with 2022.02 - Improved 3D data handling
    • Improved 3D mode performances: applied Explicit Rendering
    strategy to avoid frames loading when the map is idle

    View full-size slide

  39. New with 2022.02 - Improved 3D data handling
    • Improved the 3D Map Options related to the globe in Map
    Settings: enable atmosphere, enable fog and enable depth
    test

    View full-size slide

  40. New with 2022.02 - Improved 3D data handling
    Look at
    https://docs.mapstore.geosolutionsgroup.com/en/v2023.01.02/developer-guide/
    maps-configuration/#terrain
    Now you can configure the preferred Terrain
    provider for each 3D map!
    • Improved the support for Terrain layers including a new
    dedicated layer type to support terrain provider layer for the
    3D viewer

    View full-size slide

  41. What’s new in MapStore
    But… not only updates for 3D!

    View full-size slide

  42. New with 2022.02 - Loading Time
    2022.01.02 2022.02.02
    mapstore2.js 1.4 Mb
    mapstore2.js 2.6 Mb
    • Further performance improvements from v2021.02
    concerning the loading time of MapStore pages
    ○ Reduced the initial MapStore JS bundle size by lazy-loading
    needed lib dependencies
    ○ Modular Plugin: for a dynamic import of plugins and extensions
    only when lib dependencies are needed

    View full-size slide

  43. New with 2022.02 - Side Toolbar
    • Side Toolbar:
    ○ A new design for the MapStore map viewer
    ○ Faster and easier access to MapStore tools
    ○ Allows concurrent use of multiple tools on the same map

    View full-size slide

  44. New with 2022.02 - Query params handling
    • First implementation in v2022.01.01 series
    ○ Provided the ability to send query params using POST
    • Enhanced in v2022.02.00
    ○ Support to multiple embedded maps on the same web page via
    POST
    • Enhanced respectively in v2022.02.01 and v2022.02.02
    ○ Provided support for a simplified handling of query parameters
    ○ Support of query params for 3D mode
    More documentation available online at:
    https://docs.mapstore.geosolutionsgroup.com/en/v2023.01.02/developer-guide/map-query-parameters
    Example
    https://mapstore.geosolutionsgroup.com/mapstore/#/viewer/openlayers/new?addLayers=gs:us_states
    &center=-106.458,45.699&zoom=5&mapInfo=gs:us_states&mapInfoFilter=STATE_FIPS=30

    View full-size slide

  45. New with 2022.02 - Google and Keycloak authentication
    with OpenID Connect
    • OpenID integration: authentication providers supporting the
    protocol plug-in (Google and Keycloak)
    Look at
    https://docs.mapstore.geosolutionsgroup.com/en/v2023.01.02/developer-guide/i
    ntegrations/users/openId/

    View full-size slide

  46. What’s new in MapStore
    And… what about 2023.01 ?
    Check it out on Github
    https://github.com/geosolutions-it/MapStore2/releases/tag
    /v2023.01.00
    https://github.com/geosolutions-it/MapStore2/releases/tag
    /v2023.01.01
    https://github.com/geosolutions-it/MapStore2/releases/tag
    /v2023.01.02

    View full-size slide

  47. New with 2023.01 - Map Views
    • Create your immersive experience within the MapStore Viewer
    using the new powerful Views Tool!
    Check out the online
    documentation
    https://docs.mapstore.geosolutionsgroup.com/en/v2023.01.02/user-guide/map-views/

    View full-size slide

  48. New with 2023.01 - Map Views
    • Configuring different custom views within the same map is
    now possible!
    ○ Descriptive panel
    ○ Map position and camera
    orientation
    ○ Animation time
    ○ Custom layers visibility
    ○ More options for 3D!

    View full-size slide

  49. New with 2023.01 - Map Views
    • Additional and advanced options are available for the 3D
    mode
    Clip and Mask of 3D Tiles
    (using WFS or Vector features)
    Clipping of Terrain Layers
    Globe Translucency

    View full-size slide

  50. New with 2023.01 - 3D Measurement
    • The Measurement tool is now supported also in 3D mode
    ● Distance
    ● Area
    ● Point Coordinates
    ● Height from terrain
    ● Angle
    ● Slope
    A completely new design provides a Measurement tool more
    compact and flexible to improve also the UX!

    View full-size slide

  51. New with 2023.01 - 3D Styling
    • Leader line property to connect a marker, 3D model, icon
    or text to the terrain

    View full-size slide

  52. New with 2023.01 - 3D Styling
    Based on glTF model support (raw GLB is also supported)
    • 3D Models support as a new Point Symbolizer type

    View full-size slide

  53. New with 2023.01 - WFS/Vector Legend
    • Layer items in TOC will show the legend for WFS and vector
    layers when a style has been defined

    View full-size slide

  54. New with 2023.01 - Dashboards
    • Chart Switcher/Map Switcher: to allow switching between
    multiple charts and maps respectively using a single widget
    • Legend widget improved: to make it interactive and more
    responsive

    View full-size slide

  55. What’s new in MapStore
    Lots of other enhancements to the existing MapStore
    capabilities have been also included
    ● Improved interoperability with services other
    than GeoServer (Server Type option and more)
    ● … and allow to load 3D Tiles tilesets via query
    parameters
    ● Filter by viewport in Attribute Table
    ● Improved responsiveness for MS widgets in
    mobile
    ● Ability to set domain sharding directly from the
    Catalog component
    ● 3D zoom via share URL now supports the camera
    orientation
    ● Client side customization for WMTS background
    layers attributions
    ● ...and much more. Check out the releases
    page in Github to learn more!

    View full-size slide

  56. Ongoing work
    We are actively working on interesting new
    features and improvements for existing and
    new tools to be available in next releases!
    The MapStore community is also growing a lot,
    Thank you all for using MapStore!

    View full-size slide

  57. Ongoing work - Attribute Table
    • Attribute Table:
    ○ Ability to disable editing
    functions for layers in TOC
    (read-only layers)
    ○ Restrict editing
    functionalities only to
    certain MS groups
    ○ Keep the state of the UI
    column visibility settings
    when saving a map and in
    user session
    Q2

    View full-size slide

  58. Ongoing work - Application Context
    • Application Context:
    ○ Import/export tool will be available for MapStore
    Contexts as it is for Maps, Dashboards and GeoStories
    Q3
    • Sharing options:
    ○ Share tool enanchement for creating permalinks so that
    it will be possible to share the exact state of the map
    without saving it

    View full-size slide

  59. Ongoing work - Catalog Tool
    • Cloud Optimized GeoTIFF (COG):
    ○ The support for a new source type will be included in
    MapStore Catalog tool …
    • Efficient Imagery Data Access:
    ○ Only the data you need
    ○ Improving scalability and
    reducing bottlenecks
    • Reduced Data Duplication:
    ○ Data available online
    for all consumers
    … to be in line with many software already using it!
    Q4
    • Many Providers:
    ○ eg. S3, Google Cloud
    Storage, Azure

    View full-size slide

  60. • Further updates to align the 3D measurement
    capabilities to the one available in 2D:
    ○ Export to GeoJSON
    ○ Convert measurements to Annotation
    ○ Convert measurements to vector layer in TOC
    Ongoing work - Even more on 3D
    • Map type and camera orientation persisted when
    saving a map
    • Features editing support for 3D (also for Annotations)
    • CesiumJS update to the last version (to support 3D
    Tiles version 1.1)
    Q3
    Q3
    Q4
    Q3

    View full-size slide

  61. Ongoing work - Even more on 3D
    • MapStore Widgets available also in 3D mode!
    • Experimentation on possible performance improvements
    for Terrain layers rendering:
    ○ BIL Terrain caching server side and GeoServer
    enhancements on DDS/BIL format
    ○ Terrain layer served with static quantized-mesh
    Q3
    Q4

    View full-size slide

  62. Ongoing work - Even more on 3D
    • Support of 3D maps also in Dashboards and GeoStories!
    Q3

    View full-size slide

  63. Ongoing work - Further styling improvements
    • Geometry Transformations in Visual Style Editor for WFS
    and Vector layers
    ○ Geodesic line
    (LineSymbolizer)
    ○ Start/End Point
    (PointSymbolizer) Q3

    View full-size slide

  64. Ongoing work - More for the Interoperability
    • Improved the Interoperability with OCG compliant services
    other than GeoServer
    ○ Better handle of GetMap and GetFeatureInfo format list in Catalog
    and Layer Settings from WMS services
    Q3

    View full-size slide

  65. Ongoing work - Charts
    • MapStore Charts will be improved:
    ○ Multiple variable charts
    ○ Additional chart types
    ○ More configuration options
    Enhancing the
    integration with
    PlotlyJS!
    Both
    Dashboard and
    MapViewer!
    Q4

    View full-size slide

  66. Ongoing work - Aliases
    • Manage Feature Attributes Aliases across MapStore tools
    Attribute Table
    Identify
    Filter Layer
    Widgets
    Style Editor
    Q3

    View full-size slide

  67. Ongoing work - Google Photorealistic 3D Tiles
    • Google Photorealistic 3D Tiles: ongoing experiments on MapStore DEV
    are giving really good results with this!
    Keeping up with Google
    by using Map Tiles APIs
    with
    MapStore
    Still Experimental
    (Pre-GA Offerings)
    CesiumJS version updated to 1.91.0!
    Q3
    Check it out!
    https://dev-mapstore.geosolutionsgroup.com/mapstore/
    #/context/MapStorePhotorealistic3DTiles/44034

    View full-size slide

  68. MapStore Online Documentation
    Check out the updated User and Developer guides of
    the last release v2023.01.02
    https://docs.mapstore.geosolutionsgroup.com/en/v
    2023.01.02/user-guide/home-page/
    https://docs.mapstore.geosolutionsgroup.com/en/v
    2023.01.02/developer-guide/

    View full-size slide

  69. More Info - Online resources

    Demo site: https://mapstore.geosolutionsgroup.com

    User documentation:
    https://mapstore.readthedocs.io/en/latest/user-guide/home-page/

    Developers documentation:
    https://mapstore.readthedocs.io/en/latest/developer-guide/requirements/

    GitHub Repo: https://github.com/geosolutions-it/MapStore2

    Youtube Videos:
    https://www.youtube.com/playlist?list=PLe2yzutVrnZ5tjYGYYcKmZzo_M9ku5I9X

    Mailing Lists: https://groups.google.com/g/mapstore-users
    https://groups.google.com/g/mapstore-developers

    View full-size slide

  70. That’s all folks!
    Questions?
    [email protected]

    View full-size slide