FOSS4G - Browser-side geoprocessing with Turf.js and Leaflet
Channel: FOSS4G
Date: 2021-10-21

This workshop teaches how to use the JavaScript library Turf.js to execute client-side geoprocessing tasks. Browser-side geoprocessing is an alternative to using Web Processing Services (WPS), which require a complex server-side infrastructure and which take longer to return results, even for trivial tasks, and whose setup requires a considerable set of skills and necessary user permissions. Turf.js is a pure JavaScript library, meaning that anyone with a basic knowledge of JavaScript can get started quickly. Turf.js is very well documented, flexible, and user friendly. It offers a multitude of geoprocessing tools, covering all the classics that are used in every desktop GIS software (e.g., buffer, erase, intersect, merge) and many advanced features.


During the workshop a variety of examples, as well as live coding, are shown using Leaflet as a mapping client, but participants will also be shown how to use Turf.js with OpenLayers. Participants will first be taught how to set up a simple map and then will be walked through preparing datasets from various formats (e.g., KML, GPX, Shapefile), so they can be used with Turf.js, which requires GeoJSON as input. This will be followed by the presentation of various tools, as well as the combination of them, to conduct meaningful geospatial analysis and queries, whose results can be displayed and exported.


This workshop is taught by the author of the Leaflet Cookbook - Recipes for Creating Dynamic Web Maps (Locate Press, 2019).


Web development knowledge is a benefit, but not a necessity. The workshop will focus on Turf and anything related to general web dev of Leaflet will be explicitly mentioned and explained, if need be. All data, code, and outcomes will be shared. Feel free to simply sit back and enjoy! If you want to follow along, all you need is a simple text editor (or your IDE of choice). I will show how to convert various vector formats to GeoJSON using QGIS. If you don’t have QGIS I can share the outcomes with you (but you should nevertheless probably get QGIS, because it’s a really, really good product :-)).


Authors and Affiliations –
Numa Gremling


Requirements for the Attendees –
text editor (e.g. Notepad++) (or IDE of choice).


Track –
Software


Topic –
Software/Project development


Level –
1 - Principiants. No required specific knowledge is needed.


Language of the Presentation –
English