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

State of GeoNode 4.0 (FOSS4G 2022 Edition)

State of GeoNode 4.0 (FOSS4G 2022 Edition)

GeoNode is a Web Spatial Content Management System based entirely on Open Source tools whose purpose is to promote the sharing of data and their management in a simple environment where even non-expert users of GIS technologies can view, edit, manage, and share spatial data, maps, prints and documents attached.

GeoNode is an open source project initiated in 2010 by the World Bank Global Facility for Disaster Reduction and Recovery group (GFDRR), but from 2011 is entirely run by the developer community that the project has been able to attract. It claims some large organizations among its contributors such as the United Nations, the World Bank and the European Commission as well as many NGOs and private companies. Supported by a vast, diverse and global open source community, GeoNode is an official project of the Open Source Geospatial Foundation (OSGeo).

Using an open source stack based on mature and robust frameworks and software like Django, MapStore, PostGIS, GeoServer and pycsw, an organization can build on top of GeoNode its own SDI or geospatial portal. GeoNode provides a large number of user-friendly capabilities, broad interoperability using Open Geospatial Consortium (OGC) standards, and a powerful authentication/authorization mechanism.

The purpose of this presentation is to introduce the attendees to those which are the GeoNode current capabilities and to some practical use cases of particular interest in order to also highlight the possibility of customization and integration. Finally, we will provide a summary of new features added to GeoNode in the last release up to the latest releases of GeoNode together with a glimpse of what we have planned for next year and beyond, straight from the core developers.

Simone Giannecchini
PRO

August 31, 2022
Tweet

More Decks by Simone Giannecchini

Other Decks in Technology

Transcript

  1. Giovanni Allegri
    Alessio Fabiani
    GeoSolutions
    State of GeoNode 4.0
    FOSS4G Florence 2022

    View Slide

  2. GeoSolutions
    Enterprise Support
    Services
    Deployment
    Subscription
    Professional
    Training
    Customized
    Solutions
    GeoNode
    • Offices in Italy & US, Global Clients/Team
    • 40+ collaborators, 30+ Engineers
    • Our products
    • Our Offer

    View Slide

  3. Affiliations
    We strongly support Open
    Source, it Is in our core
    We actively participate in
    OGC working groups and
    get funded to advance new
    open standards
    We support standards
    critical to GEOINT

    View Slide

  4. What’s GeoNode

    View Slide

  5. GeoNode at a Glance
    GeoNode is a platform for the management and publication
    of geospatial data.
    It brings together mature open-source software projects
    under an easy to use interface.
    With GeoNode, non-specialized users can share data and
    create interactive maps.

    View Slide

  6. Capabilities
    • Import geospatial datasets, documents and media
    • Create thematic maps , dashboards and geostories
    • Manage granular security, permissions and sharing for
    users and groups
    • User with appropriate permissions can edit layer metadata,
    which are exposed by OGC CSW and REST, to provide
    search/discovery capability
    • Users with appropriate permissions can edit layer styles and
    data (for vector layers)
    • GeoNode exposes a number of standards for each layer:
    OGC (WMS, WMS-C, WFS, WFS-T, WCS, CSW) and mass
    market search standards (OAI-PMH, SRU, OpenSearch)
    • Full control through a RESTful API

    View Slide

  7. Capabilities
    DATASETS
    DOCUMENTS
    LOCAL FILES
    Upload from local filesystem
    REMOTE SERVICES
    OGC WMS
    GeoNode
    ArcGIS Server
    Custom harvesters
    REMOTE FILES (wip)
    Links (URLs) to remote files

    View Slide

  8. Capabilities
    DATASETS
    DOCUMENTS
    MAPS
    GEOSTORIES
    DASHBOARDS
    GEOAPPS

    View Slide

  9. Capabilities
    MAPS
    GEOSTORIES
    DASHBOARDS
    GEOAPPS
    WMS WMTS WFS CSW
    embedded viewers

    View Slide

  10. GeoNode at a Glance
    • It’s also a web framework based on Python and Django
    to allow people to implement SDIs and bespoke
    Geospatial applications.

    View Slide

  11. GeoNode at a Glance

    View Slide

  12. GeoNode at a Glance

    View Slide

  13. The Community
    • GeoNode code is made of several components, hosted on
    GitHub under the GeoNode organization
    • The GeoNode Project Steering Committee (PSC) governs
    the GeoNode project.
    • Users and developers mailing list, and a Gitter chat are the
    main communication channels for the community.
    https://github.com/GeoNode

    View Slide

  14. Releases History
    • August 2022, GeoNode 4.0.0
    • June 2022, GeoNode 3.3.2/4.0RC1
    • February 2022, GeoNode 3.2.3/3.3.1/4.0RC0
    • November 2021, GeoNode 3.2.2/3.3.0
    • July 2021, GeoNode 3.2.1
    • April 2021, GeoNode 3.2.0 (Django 2.2.16, GeoServer 2.18.2) / GeoNode 3.1.1 (last 3.1 release)
    • May 2020, GeoNode 3.0 (Django 2.2.13, GeoServer 2.16.2) / GeoNode 2.10.4 (last 2.10 release)
    • February 2020, GeoNode 2.10.2 (Django 1.11.29, GeoServer 2.15.4, pycsw 2.4.2)
    • June 2019, GeoNode 2.10 (Django 1.11.20, GeoServer 2.14, pycsw 2.2.0)
    • April 2018, GeoNode 2.8 (Django 1.8.19, GeoServer 2.12.2, pycsw 2.0.2, group moderation and resources
    publication workflow, SLD upload, metadata wizard)
    • May 2017, GeoNode 2.6 (Django 1.8.7, GeoServer 2.9, pycsw 2.0.2, React client, QGIS server backend,
    ansible and docker setup, Ubuntu 16.04 support)
    • November 2015, GeoNode 2.4 (Django 1.6.11, GeoServer 2.7, pycsw 1.10.5, django-guardian, groups, remote
    services, responsive template, Ubuntu 14.04 support)
    • April 2014, GeoNode 2.0 (Django 1.5.5, GeoServer 2.5, pycsw 1.8.6, django-polymorphic, bootstrap, Ubuntu
    12.04 support)
    • October 2012, GeoNode 1.2 (Django 1.4, GeoServer 2.3, South migrations, django-taggit, social features,
    comments and ratings, find/add layers widget)
    • May 2012, GeoNode 1.1.1 (Ubuntu 10.04 and 11.04 installer)
    • December 2010, GeoNode 1.0, with major contributions from OpenGeo, the World Bank, GFDRR, UNISDR,
    and GEM
    • August 2010, GeoNode 1.0-beta

    View Slide

  15. Releases History

    View Slide

  16. Demo instances
    • You can play with the online demo instances
    • master https://master.demo.geonode.org
    • 4.0.x https://development.demo.geonode.org
    • 3.3.2 https://stable.demo.geonode.org

    View Slide

  17. GeoNode 4.0

    View Slide

  18. What’s new for users?
    • A brand new User Interface and several UX
    enhancements
    • Simplified interaction with tools and functionality. Less
    page transitions and steps to search, navigate, preview
    and perform daily operations on resources (one-click-
    away actions)
    • Decluttering of the UI and removal of duplicated tools
    and UX flows
    • New Web Mobile version

    View Slide

  19. What’s new for users?
    • A Single Page Application for the catalogue of
    resources

    View Slide

  20. What’s new for users?
    • with dynamic Filtering / Infinite Scrolling

    View Slide

  21. What’s new for users?
    • and inline live preview of resources

    View Slide

  22. What’s new for users?
    • The main page becomes a view of the Personal
    Workspace

    View Slide

  23. What’s new for users?
    • Optimized for mobile

    View Slide

  24. What’s new for users?
    • With integrated viewers and editors

    View Slide

  25. What’s new for users?
    • With integrated viewers and editors

    View Slide

  26. What’s new for users?
    • Edit and publish stylings for geospatial dataset styling
    with live preview, thanks to the advanced MapStore
    styler

    View Slide

  27. What’s new for users?
    • Integrated viewers and editors
    • Wizard and full metadata metadata editing (Dublin Core, ISO 19115)
    • Support for additional and custom metadata schemes (e.g. RNDT,
    DataCite, etc.)

    View Slide

  28. What’s new for users?
    • Thesauri
    • Handle multiple thesauri
    • Re-implemented thesaurus import/export using rdflib to support a wider
    range of RDF formats
    • Improved i18n in thesauri titles
    • Improved cardinality handling

    View Slide

  29. What’s new for users?
    • Simplified upload for datasets and media
    • Asynchronous upload: for heavy datasets you can return back later to see the
    progress
    • Optional upload size limits and per user rate limiting (dimension and number of
    parallel uploads)
    • Improvements to performance and stability also for big datasets
    • GeoPackage vector layers batch import (WIP)

    View Slide

  30. What’s new for users?
    • Permissions and Sharing options
    • Security: Fine-grained permissions per user, group / organization and role
    • ACL enforced in front of any exposed endpoint: UI, REST API and OGC services
    • Geofencing: restrict access to specific areas of spatial datasets

    View Slide

  31. What’s new for users?
    • Dashboards

    View Slide

  32. What’s new for users?
    • Geostories

    View Slide

  33. What’s new for users?
    • QGIS GeoNode Plugin
    https://geonode.org/QGISGeoNodePlugin/

    View Slide

  34. What’s new for users?
    • QGIS GeoNode Plugin
    • Search, preview and load GeoNode resources in QGIS
    • Upload datasets
    • Edit style and data
    Credits: Pacific Resilience Community (SPC), World Bank, Kartoza and Geosolutions

    View Slide

  35. What’s new for users?
    • GeoNode 4.0 also introduces Harvesters
    • Publish and manage remote resources (WMS,
    GeoNode instances, ArcGIS MapServer)
    • Create custom harvesters for your own APIs, e.g.
    PostgREST, with scheduled jobs
    • Either publish the remote service or import data and
    publish as local resource

    View Slide

  36. What’s new for users?
    • GeoNode 4.0 introduces Harvesters

    View Slide

  37. What’s new for system integrators?
    • GeoNode 4.0 offers extended options to
    simplify it’s integration into external systems.
    • A fully revised CRUD REST API
    • Resource Catalogue search and management
    • Users / Groups search and management
    • Upload
    • Permissions management
    • GeoNode management commands over HTTP(S)
    • Async operations tracking and management
    • Security managed by GeoNode’s share / permissions system
    • Session, Oauth2 and Basic Auth authentication (with pluggable
    extensions)
    • Improved Docker based deployments, which makes installing and
    running a basic GeoNode / GeoNode Project instance quick and
    easy

    View Slide

  38. What’s new for system integrators?
    • REST API OA3 schema and DRF views

    View Slide

  39. What’s new for developers?
    • GeoNode 4.0 provides several ways to extend and
    customize both the backend and the frontend
    • Backend
    • GeoNode relies on the modular system offered by Django and
    Django Rest Framework, where new functionality can be easily
    integrated by developing new Python modules and apps
    • The concept of “GeoApps” also enables the integration of new
    resource-based applications within the catalogue services
    • The Resource “blob” field and the metadata model permits to
    extend resources with additional custom fields
    • New apps can extend and leverage the REST API service and
    the asynchronous engine that drives GeoNode backend
    services.

    View Slide

  40. What’s new for developers?
    • Asynchronous subsystem

    View Slide

  41. What’s new for developers?
    • GeoNode 4.0 offers several options to extend and
    customize both the backend and the frontend
    • Frontend
    • GeoNode fronted is a hybrid application, where client side code
    (mainly React and MapStore) is mixed with server side page
    rendering
    • Branding and new custom pages can be developed with the
    Django templating functionality, on top of the layout and
    theming system provided by GeoNode
    • Custom client side plugins (even integrated with the MapStore
    framework) can be developed without having to bundle them
    within the client app code

    View Slide

  42. What’s new for developers?
    • Branding and Theming

    View Slide

  43. What’s new for developers?
    • Custom pages

    View Slide

  44. What’s new for developers?
    • Custom client plugins

    View Slide

  45. Upgrade
    • Are you using an older version? Upgrade!
    • User/Developer lists and Gitter typically covers only
    supported versions. Today it means only 3.3.2 and 4.0
    • Security fixes and installation support on new OSs
    being added to supported versions only!
    • Moving data from old versions will be much harder if
    not impossible
    • Web interfaces and GIS clients will be much different.
    No one will be able to backport fixes or improvements
    to the old ones.
    • Please upgrade your GeoNode installations!!!

    View Slide

  46. View Slide