Michael Schmuki


Sessions

10-05
17:00
30min
QGIS Meets Django-OAPIF: A Multi-Platform Forestry Solution in Production
Michael Schmuki

Managing forestry subsidies brings together a diverse set of users and data — not only spatially, but also digitally. Power users need the full flexibility of QGIS for advanced digitizing, while district foresters and private forest owners need simple, guided workflows that help them contribute high-quality data without being overwhelmed.

In the Canton of Zug (Switzerland), the cantonal forestry office developed a central platform that coordinates all access to the shared dataset. The platform is built on Django and exposes data through different endpoints — the web application via Django's own model and admin layer, QGIS via OGC API Features using the django-oapif library — but crucially, both share the same underlying business logic, user management, and permission model. Each user only sees and edits what they are authorized to, regardless of which client they use, and data quality rules are enforced once at the platform level rather than in each client individually.

Users can freely choose between the modern web application and QGIS depending on their needs. Authentication is handled uniformly for all users. Beyond the core workflow, the platform integrates data from surrounding systems and automatically generates PDF reports.

In this talk, we will walk through the architecture, the role QGIS plays as the power-user frontend, and the practical challenges we encountered bridging the gap between desktop GIS and web-based workflows over a shared platform. We will also give an outlook on upcoming improvements: Single Sign-On integration, rendering web forms directly inside QGIS, and our experiments with alternative geometry encodings to improve transfer performance of OGC API Features.

Databases & Web
Pegna
10-06
09:30
30min
qgis-js in the Wild: Project Updates and a National Hazard Warning Cockpit in the Browser
Michael Schmuki

qgis-js brings the QGIS core rendering engine to the browser via WebAssembly — no server-side map rendering required. Since its initial release, the project has matured significantly: all qgis-js patches have been upstreamed into QGIS core, and wasm32-emscripten is now an officially supported build target. This means new qgis-js versions can be built directly alongside QGIS releases, with CI ensuring ongoing compatibility.

In this talk, we will cover the recent project developments — what has changed, what new capabilities are available, and where the remaining challenges lie — before diving into a real-world application: a browser-based cockpit built for the Swiss Federal Office for the Environment (BAFU) as part of their modular warning system SAM. The application supports early warning decisions for spontaneous landslides and debris flows by presenting complex model results — precipitation thresholds, exceedance probabilities, and time series — as interactive, QGIS-styled maps and diagrams directly in the browser. What started as a QGIS desktop prototype with project macros and attribute form plots is now a highly interactive web application powered by qgis-js, accessible to warning officers without any software installation.

We will share the architectural decisions behind the application, the lessons learned integrating qgis-js into a production web app, and our outlook for the project's future.

Use case
Hangar