Building SDIs and geoportals with GeoNode and a search engine



WorldMap is an SDI/GeoPortal project running since 2010 by the Center for Geographic Analysis, Harvard University, that exposes 25k+ internal layers, 200k+ remote layers, 7k+ maps and used by 20k+ registered users. It is built on top of GeoNode and its core components (Django, GeoServer, GeoWebCache, PostgreSQL/PostGIS, pycsw).

Users can build maps with a web browser using the internal layers (stored in the PostGIS database and the filesystem and exposed by GeoServer as OGC web services) and the remote layers, exposed by external OGC and Esri Rest Web Services. Remote layers are harvested, health checked, processed and exposed with a system based on Django and MapProxy, named Harvard Hypermap (HHypermap). A search engine, based on Solr or Elasticsearch, enriches the WorldMap user’s experience providing powerful features such as keyword, spatial and temporal facets, full text search, natural language processing, weighted results and much more.

The organizers will lead the workshop’s participants, with a series of step by step tutorials, to setup a development environment containing all the needed components, to get a basic understanding of the solution stack involved to replicate such an architecture in their own geoportals/SDIs implementation, and to discuss optimization techniques for taking advantage of the solution for handling a large number of datasets.

The workshop is targeted to geospatial developers who should have a basic understanding of web development, OGC standards and spatial databases.


You need to take your notebook at the workshop. The notebook should have at least 4GB of RAM. You can use any operating system (Linux, OS X, Windows), provided that you install the following tools:

Note: you could use Chrome in place of Firefox for all of the tutorials of this workshop. Though, one tutorial will use the Firefox Developer Tools to inspect requests to the OGC services. If using Chrome you should be able to follow along that tutorial using the Chrome Developer Tools

Outline of tutorials