Skip to content

Add support for an additional map engine: MapLibre GL JS #20

Description

@gregvolny

Description

I am currently implementing a routing and navigation system in CSPro to help enumerators navigate more efficiently in the field. While Leaflet provides a solid foundation for basic mapping functionality, I have encountered several limitations when developing advanced routing and navigation features.

To overcome these limitations, I would like to request support for an additional map engine, specifically MapLibre GL JS.

Motivation

MapLibre GL JS offers several capabilities that would significantly enhance mapping and navigation workflows in CSPro:

  • Vector tile rendering with better performance on large datasets.
  • Improved support for modern map styles and 3D visualization.
  • More advanced route visualization and navigation features.
  • Better integration with custom routing engines and geospatial services.
  • Smoother rendering and interaction on mobile devices.

Potential Benefits for CSPro

Adding MapLibre GL JS as an optional mapping engine would:

  • Enable more sophisticated GIS and navigation applications.
  • Improve fieldwork support for survey and census operations.
  • Expand the range of geospatial solutions that can be developed within CSPro.
  • Provide developers with a modern alternative while maintaining compatibility with existing Leaflet-based implementations.

Suggested Implementation

Ideally, CSPro could support multiple map engines, allowing developers to choose between:

  • Leaflet (current implementation)
  • MapLibre GL JS (new option)

This approach would preserve backward compatibility while providing access to modern geospatial capabilities.

Thank you for considering this enhancement request. It would greatly benefit projects that rely on routing, navigation, and advanced geospatial visualization in field data collection operations.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions