I’ve been researching hybrids of modern web mapping technologies for a product we’re currently developing.

So we can’t use the Google Maps protocolbuffer-vector-tiles-rendered-by-webgl approach yet. OpenLayers3 and OpenScienceMap hint at a bright future in this regard, but for now we’re stuck with bitmap tiles.

But we want some interactivity and on-demand rendering with authentication, dynamic filtering and on-the-fly styling. So I made a little proof of concept demo using our PostGIS database, node.js and a modified version of Windshaft.

Watch this on Vimeo.</p>

Summary of this technology:

  • Tiles are served by Node.js/Windshaft using four evented workers
  • Pre- and post render hooks allow for custom authentication
  • Styling can be updated using a JSON post containing CartoCSS rules (using Millstone and Grainstore)
  • Caching of tiles can be enabled and disabled by specifying it in the GET request in Leaflet/OL
  • Two layers (UTFGrid and the orange dots) are requested using an SQL query which can be modified by the DAT.gui controller