Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GNIP-56: Include the WorldMap client and its applications set in GeoNode #3718

Closed
capooti opened this issue Apr 5, 2018 · 8 comments
Closed
Assignees
Labels
gnip A GeoNodeImprovementProcess Issue tested Issue has been tested on named setups
Milestone

Comments

@capooti
Copy link
Member

capooti commented Apr 5, 2018

WorldMap Contrib Applications

WorldMap is a GeoNode forked instance which adds a number of great features on top of GeoNode. This is a work which has been done in the last few months and which removed the forked code (which was based on GeoNode 1.2) and isolated all of its extended functionalities in a GeoNode contrib applications set which can now run on latest GeoNode 2.8.

We propose to include this applications set as part of GeoNode contrib applications. Current repository and branch are here: https://github.com/cga-harvard/geonode/tree/worldmap

Code is a few commits behind GeoNode 2.8. We will sync to it and send it as a PR soon.

screenshot 2018-04-05 12 42 48

Overview

All of the new features are intended to be used by the WorldMap client (included), which is a customized version of GeoNode/GeoExplorer which adds new widgets to use these tools. The map json format extends the native GeoNode GeoExplorer json format with elements used from the WorldMap client.

The new functionalities are:

  • Layer categories in table of content
  • Layer graduated style editor
  • Gazetteer
  • Feature search
  • Map revisions
  • URL for maps
  • Layer search with Hypermap Registry (optional)

This applications set does not change existing models - therefore no schema changes, but comes with its own models.

In the following sections we provide an overview of the new features:

Layer categories in table of content

The geoexplorer table of content is organized in categories. When a layer is added to the map, the layer is added to the corresponding metadata category. It is possible to rename categories, create new ones and rearrange the layers from one category to the other.

demo: http://recordit.co/xZsv0tvNlW.gif

Layer graduated style editor

This map widget allows to create classified styles for layers. It is based on the SLD REST Service (http://docs.geoserver.org/stable/en/user/community/sldservice/index.html). A layer can be classified on a given attribute using one of the following methods: unique values, quantile, equal intervals and jenks natural breaks.
It is possible to apply to the style a color ramp.

demo: http://g.recordit.co/NcVjusmiE3.gif

Find place widget and layers gazetteer

This map widget let map users to search for a place using external geocoders like Google, Nominatim and GeoNames. It is possible to create a GeoNode specific gazetteer composed by the layers which are in the GeoNode instance.
It is possible to add one or more attributes of every layer to the gazetteer, and it is even possible to provide temporal parameters to enable a spatiotemporal gazetteer search.

demo: http://recordit.co/O3dAjweYCp.gif

Feature search

This map widget enable the users to search feature using a text which is searched within feature field values. The user can specify which attributes can be searched within a given layer.

demo: http://recordit.co/R5oukvdsjt.gif

Map revisions

This application stores map configuration history in the database. Using the map revision tool its is possible to switch the map to a previously saved version in its history.

demo: http://recordit.co/9jRAKiCeAG.gif

HTML text widget

Any layer fields starting with "descriptio" is associated with an HTML text widget

URL for maps

It is possible to provide a map name, and use it as a permalink to the map. The save map widget also let the user to change the map abstract and provide html content which can be used as the map description.

demo: http://recordit.co/SUv5YxWgpZ.gif

Layer search with Hypermap Registry (optional)

This optional widget let users to search GeoNode layers using a layer heatmap. This can be useful when there is a large number of layers. Requires Hypermap Registry: https://github.com/cga-harvard/Hypermap-Registry

demo: http://recordit.co/q675F4HZ16.gif

@capooti capooti added the gnip A GeoNodeImprovementProcess Issue label Apr 5, 2018
@capooti capooti self-assigned this Apr 5, 2018
@afabiani
Copy link
Member

afabiani commented Apr 5, 2018

@capooti awesome +1

@capooti capooti changed the title Include the WorldMap viewer and its applications set in GeoNode Include the WorldMap client and its applications set in GeoNode Apr 5, 2018
@francbartoli
Copy link
Member

Very cool @capooti!

@giohappy
Copy link
Contributor

giohappy commented Apr 6, 2018

@capooti thx! What about integrating this into the maps application? If I understand it correctly it adds improvements without removing existing features, isn't it?

@simod
Copy link
Member

simod commented Apr 6, 2018

@capooti this is a great job! Well done!

@ppasq
Copy link
Member

ppasq commented Apr 6, 2018

@capooti awesome!

@capooti
Copy link
Member Author

capooti commented Apr 6, 2018

thanks! this work is based on original great GeoNode 1.2 code by @mbertrand and now has been updated for GeoNode 2.8 together with guys from Terranodo.

@giohappy: it is as you say, but keep in mind that, in order to run the WorldMap viewer, the gazetteer needs PostgreSQL (with PostGIS and dblink support) and the classified style editor uses SLD REST Service, so it can be run only on instances using GeoServer.
For now let's include this viewer as optional, then we can see in the future if it could be a total replacement (making the gazetteer and classified style editor available only when using PostgreSQL and GeoServer).

@t-book
Copy link
Contributor

t-book commented Apr 9, 2018

looks great!

@karakostis
Copy link
Contributor

Great work!

afabiani pushed a commit that referenced this issue Jun 5, 2018
Implements GNIP #3718 (Worldmap contrib application)
afabiani pushed a commit to geosolutions-it/geonode that referenced this issue Jun 6, 2018
@afabiani afabiani added the tested Issue has been tested on named setups label Nov 6, 2018
@afabiani afabiani added this to the 2.10 milestone Jun 25, 2019
@afabiani afabiani changed the title Include the WorldMap client and its applications set in GeoNode GNIP-56: Include the WorldMap client and its applications set in GeoNode Aug 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gnip A GeoNodeImprovementProcess Issue tested Issue has been tested on named setups
Projects
None yet
Development

No branches or pull requests

8 participants