data-liberation-project / epa-rmp-viewer

Simple viewer/browser for EPA RMP submissions.
https://data-liberation-project.github.io/epa-rmp-viewer/
2 stars 1 forks source link

Gather options for geographical maps to show on UI #9

Open moliver28 opened 10 months ago

moliver28 commented 10 months ago

I wanted to document some of the desk research I did over the last week. I attempted to look for lightweight, open-source map svelte libraries. Here's what I found..

@jsvine @mrosadio TL,DR; I found madewithsvelte.com which had a few decent options which include maplibre, and mapbox (which does have some pricing at certain usages). The best options I found were Jvectormap, datamaps, and svelte-geo. This is in addition to the popular choice of Leaflet, which has many options.

Here's a more detailed breakdown:

JVectorMaps

JVectorMaps has a template that looks very similar to what we may want for this work. The code can be found here. There are also labels with information that appear on hover. This looks to be a free license Screenshot 2023-10-30 at 9 46 01 PM There is also a drill-down US map that is very close to what we'd want, I think. Screenshot 2023-10-30 at 10 11 42 PM

DataMaps

DataMaps has some templates which feature labels on states and zoom functionality (which doesn't work on my browser so I'd need to try more to test). There are also labels with information which show on hover. Screenshot 2023-10-30 at 9 46 50 PM

Svelte-geo

Svelte-geo had some decent options that seemed ultra-lightweight, but I'm unsure if there's support for pings or markers on the map, which we would need. There was a nice fly-out that has information when clicked on a region. Screenshot 2023-10-30 at 10 00 40 PM

Maplibre

Maplibre has many option, and I think there cluster and popup one is closest to what we'd use. There was also a cluster map which was pretty neat. maplibre

Leaflet

Leaflet has many many options, but I went through the base-map providers and thought Mierune looked similar to what we'd want. There was also tilelayer.Swiss which looked okay. I found a cool link to go through tons of other provider demos easily. Lastly, there was a Unovis that seems to be a fork of Leaflet and has a map that seems appropriate, shown below. Screenshot 2023-10-30 at 10 26 00 PM

Other

Openlayers has tons of options, but I didn't really see any that would work for our data. datawrapper was a decent option, but after looking at their pricing page, it seems like the maps would have to be .png on the free license.

jsvine commented 10 months ago

Thank you, @moliver28! Very helpful. Maplibre and Leaflet both seem like good options, particularly since they allow for basemaps, which seems like a useful feature for this use-case.

moliver28 commented 10 months ago

How did you want to move forward @mrosadio ? This issue can be closed, and we can move the rest of the work into https://github.com/data-liberation-project/epa-rmp-viewer/issues/5, but I'm a little new to collaborating on code that's on GitHub so I wasn't sure how how you wanted to handle that. But, I'm flexible with anything!