Ideas and Suggestions for Leaflet

Leaflet UserVoice is a place for you to show support for your favorite feature and improvement suggestions for Leaflet.

  • Please don’t add duplicates of existing ideas.
  • Please don’t report issues with map data — they have nothing to do with Leaflet and will be declined. It uses OpenStreetMap on the website examples.
  • If you need to report a bug, please use GitHub issues instead.

Leaflet will become even better if you add …

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can vote and comment on it.

If it doesn't exist, you can post your idea so others can vote on it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. WFS layer

    Support for WFS (Web Feature Service) layers: http://en.wikipedia.org/wiki/Web_Feature_Service

    193 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
    • Documentation like jQuery

      You should come up with an documentation like jQuery does, each function has a example on the page so we can get an understanding of how it is used than minimal examples on the Examples page.

      122 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
      • Layer order control

        Ability to easily control the z-index order of tile and vector layers.

        111 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)

          The problem with this feature is that SVG doesn’t support z-index ordering by design. The only way to do this is to reorder DOM objects, which is quite inefficient if you want precise control. It’s even worse in Canvas where you have to rerender all layers in the correct order.

          In the current master version, I’ve implemented bringToBack and bringToFront methods for both vector and tile layers which should satisfy most of the use cases here, but will continue designing a more sophisticated solution.

        • Continuous zoom...

          Any idea when this will be added? It would make Leaflet extremely powerful.

          107 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • Marker Visibility Control

            It would be nice to be able to control the visibility of a marker (hide/show) at either the marker or the layer level. I currently do this in both Google Map API and Openlayer Map API to allow the user to filter between different types of markers on the map.

            http://www.topix.com/map

            98 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)

              Technically, doing removeLayer and addLayer for hiding/showing markers has the same performance as hiding them with display = ‘none’, as addLayer only initializes the marker once and only appends it to the DOM on subsequent calls. So I don’t see much need to add such methods for individual markers.

              However this would be a very useful feature for LayerGroup’s, where I could implement putting all layers from the same group into a div container to be able to hide them all at once for a considerable performance gain. This is definitely in the plans.

            • Map Rotation

              Add the ability to rotate the map. Is very useful for mobile devices, for example in a GPS navigation app.

              Maybe use hammerjs (if available) to allow the rotation of the map using two fingers on mobile devices.

              OpenLayers3 supports this out of the box.

              88 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                1 comment  ·  Admin →
              • Marker Rotation

                Ability to set rotation angle for markers.

                86 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                • Windows Phone

                  It would be great to have a mobile app for Windows Phone 7 and 8.

                  79 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                  • Overlay opacity control

                    Add a slider control for adjusting the opacity of an overlay layer

                    69 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      1 comment  ·  Admin →
                    • Number the markers

                      it sould be nice if we ware abble to number the markers, for a search around a point for exemple.

                      66 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                      • TileLayer.GeoJSON

                        Support for tiled GeoJSON services.

                        62 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          1 comment  ·  Admin →
                        • Support for SVG Markers

                          Allow the use of inline SVG for markers in stead of a img tag. This would for example enable using libraries like d3js to generate little animated pie charts shown on the map.

                          52 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                          • Convert vectors layers to GeoJSON

                            In the class L.geoJson we have the method geometryToLayer ("Creates a layer from a given GeoJSON feature"). It would be great if some sort of inverse operation was available. That is, in the class L.Path there should be a method "layerToGeometry" which would create the essential geoJson data for the given Vector Layer (be it a Polyline/Polygon/Rectangle, a MultiPolyline/MultiPolygon, or a Circle/CircleMarker, for which the radius could be stored in the properties). The class L.Marker should have this as well.

                            48 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                            • post example showing custom projection

                              It would be cool if one of the examples show the use of a custom projection. This could show how one could use leaflet to pan/zoom around a layer representing a simple image; or a local tile set (e.g. one city). This would also show how to create a map that doesn't wrap around the east/west.

                              41 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                1 comment  ·  Admin →
                              • draw icon with canvas

                                I want the size and content of icon should be depend of zoom.

                                same L.TileLayer.Canvas but for icon.
                                I think about something like:
                                var canvasMarker = new L.Marker.Canvas(<op>);
                                canvasMarker.drawIcon = function(canvas,zoom){
                                var context = canvas.getContext("2d");
                                context....// work here
                                }

                                37 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                • get active baseLayer

                                  In case when user wants to save his selection of baseLayer or in case of map permalink generation would be nice to have such feature.
                                  Also look at https://groups.google.com/d/msg/leaflet-js/_xdwjALWGb8/yXhjYYHk4bwJ

                                  36 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                  • marker color

                                    Add a set of standard colored markers to the package.
                                    Now there's just blue, but being able to say 'marker-icon-red' in place of 'marker-icon' would be great.
                                    (I have made th standard marker into 11 other colors, and happy to share them)

                                    34 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                    • Zoom and panTo animation time parameter

                                      It will be grate set animation time for setZoom and panTo map methods like in mapbox (http://mapbox.com/mapbox.js/api/v0.6.5/#ease.run and http://mapbox.com/mapbox.js/example/optimal-easing/).

                                      31 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                      • More responsive scrollwheel zoom

                                        The current implementation relies upon a setTimeout that fires performZoom after 50ms of scrollwheel idle. Particularly on an Apple Magic Mouse, this feels very laggy in practice.

                                        The cheap solution is just to get rid of the timeout and call performZoom directly on every scrollwheel event. This is a bad way to go and I'm trying to think of a better solution.

                                        24 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                        • Map graticules

                                          Graticules with customizable labeled LatLng grid, tropics, equator

                                          24 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            1 comment  ·  Admin →
                                          ← Previous 1 3 4 5 6 7
                                          • Don't see your idea?

                                          Ideas and Suggestions for Leaflet

                                          Feedback and Knowledge Base