Back to top

GeoStyler Code Sprint 2025

From Monday, 02.06. until Friday, 06.06.2025 the fourth GeoStyler Code Sprint took place in the offices of camptocamp in Bussigny, Switzerland. 13 motivated coders from France, Germany and Switzerland participated and provided great contributions to the GeoStyler project.

We want to thank everyone who contributed to the GeoStyler project. Thank you for your motivation and engagement, for all your great contributions, for all the ideas that came up during the code sprint and for all the fun we had during this week! You are awesome!

Thank you

@kaivolland, @hwbllmnn, @jansule, @slafayIGN, @ocruze, @pprev94, @ger-benjamin, @myriamfischer, @eschuh, @cbrousseau1, @mircmo, @LHBruneton-C2C, @jahow.

Code Sprint Members


Sponsors

We also want to thank the sponsors of this year’s code sprint:

camptocamp logo


FOSSGIS logo


OSGeo logo


Thank you, camptocamp, for hosting the code sprint!

Thank you, FOSSGIS e.V. and OSGeo, for funding the travel expenses for many of our participants!

Thank you, Pozi and all other OpenCollective contributors, for sponsoring the social event!

Additional thanks to all companies that supported this event by allowing their employees to participate!

Without you the code sprint would not be possible and we would miss out on such a great community!

So thank you, @camptocamp, @IGNF, @kanton-aargau, @terrestris!

Contributions

We’re excited to share the results of the GeoStyler Code Sprint 2025! This year’s sprint brought significant improvements across the board - from UI enhancements to CLI tooling, backend support, and standards compliance. Here’s a summary of what we’ve accomplished together with the community.

GeoStyler-REST: Now with OGC API Styles

We’re proud to announce that GeoStyler-REST now exposes OGC API Styles-compliant endpoints. This marks a significant step forward in aligning with modern geospatial standards and greatly enhances interoperability with other tools and services.

With this integration, styles can now be stored in a single format - and requested in any other supported format, thanks to GeoStyler’s parser system. For example, you can save a style as LYRX, and then retrieve it as Mapbox Style JSON, SLD, QML, or OpenLayers FlatStyle format.

This brings several benefits:

  1. Simplified style management: Store once, use anywhere.
  2. Enhanced interoperability: Seamlessly integrate with a wide range of clients and servers using different styling formats.
  3. Cleaner APIs and automation: Perfect for automated workflows.

Check out the interactive GeoStyler-REST demo on https://rest.geostyler.org/ or set it up yourself!

geostyler rest ogc api

Kudos to @hwbllmnn.

UI Improvements: Styling with Ease

We continued our push toward a better user experience, with several improvements to GeoStyler’s interface:

  • Preview in Symbolizer Modal Users can now instantly see how their symbolizer settings will look - directly within the modal. This live feedback loop makes fine-tuning styles easier and more intuitive.

  • Reordering Styling Options Symbolizer settings can now be reordered, giving users greater control over styling priority and rule organization.

  • Drag and Drop in RuleTable Drag-and-drop functionality in the RuleTable allows seamless reorganization of rules - no more repetitive clicking or manual sorting!

  • Improving Scale Denominators The ScaleDenominator components have been improved, by providing a predefined set of scales as well as adding error information so that chances of making errors are less likely.

  • Make Multi Edit optional The RuleTable component now has an optional layout without select and multi edit options. When enabled, actions like duplicate and delete rule are placed at the end of each row.

  • Improving GeoStyler Builds Imports in GeoStyler builds now include the .js extension, thereby strongly facilitating the integration into existing applications.

  • Improving CI We now run several pipelines using Bun, resulting in notably faster CI runs.

Kudos to @slafayIGN, @ocruze, @pprev94, @cbrousseau1, @mircmo, @hwbllmnn, @kaivolland.

CLI Upgrades: Automation Ready

The GeoStyler CLI got some love too - becoming leaner, quieter, and more flexible for automated environments:

  • --quiet Mode The CLI now features a quiet mode that outputs only the parsed style to stdout, making it more suitable for scripting and integration into automated pipelines.

  • Constructor Flags for Parsers You can now pass constructor options to parsers via CLI flags, enabling finer control over how styles are interpreted or exported.

Kudos to @jansule, @ger-benjamin.

Demo Revamp: A New Look

Our GeoStyler demo app is receiving a fresh redesign - based on the design concepts developed during last year’s code sprint. While the work is still ongoing, the new layout will bring significant improvements.

The updated interface is better organized, and does a much better job at highlighting the different use cases for each UI component.

geostyler demo

Kudos to @jansule.

LYRX Parser Improvements

The GeoStyler LYRX parser (Esri Layer File format) saw multiple stability and compatibility improvements. It now handles a broader range of symbols and edge cases, ensuring more accurate style conversion from proprietary formats.

Kudos to @ger-benjamin, @myriamfischer, @eschuh.

OpenLayers Parser: Now with Flat Style Support

The GeoStyler OpenLayers Parser has seen important enhancements, particularly in its support for OpenLayers flat styles. While previous efforts focused mainly on reading styles, this sprint concentrated on writing flat styles. Please note that we are still working on this feature and hope to provide a first working version, soon.

Flat styles in OpenLayers provide a more lightweight, declarative way to define styling - and now, thanks to these improvements, GeoStyler will soon export styles directly into this format. This makes it easier to integrate GeoStyler-authored styles with OpenLayers-based applications that use flat styling conventions.

Kudos to @LHBruneton-C2C, @jahow.

Dedicated Server: Bringing It All Together

A major milestone for the GeoStyler project - our apps now run on a dedicated server. This infrastructure upgrade lays the groundwork for a more unified and integrated experience across the entire GeoStyler ecosystem.

Key benefits include:

  • Hosting of custom datasets for demos and real-world testing -️ Support for backend-powered applications, such as GeoStyler-REST

Currently, following apps are already running on the new server:

Other apps will be migrated to the new server little by little over the next months.

Kudos to @jansule.

Thank You!

A big thank you to everyone who participated in this year’s sprint - whether you contributed code, tested features, gave feedback, or helped shape ideas. Your support continues to move GeoStyler forward.

And as always, we welcome your ideas, feedback, and contributions.

We especially want to welcome our new contributors to the GeoStyler project! We are happy for a growing community and are looking forward to the future development of the GeoStyler project.

Happy styling!

  • The GeoStyler Team