pulsejet / memories

Fast, modern and advanced photo management suite. Runs as a Nextcloud app.
https://memories.gallery
GNU Affero General Public License v3.0
2.97k stars 79 forks source link

Use MapLibre instead of leaflet #1081

Open RayBB opened 3 months ago

RayBB commented 3 months ago

Saw your post on HN and installed right away. Is working great on my hetzner instance. Bummer about videos not working due to lack of ffmpeg there though. Anyway...

Is your feature request related to a problem? Please describe. Leaflet is slow and not a very good user experience.

Describe the solution you'd like MapLibre is very similar but a much nicer experience. You can see an app that uses it here https://onthegomap.com/#/create

Describe alternatives you've considered

Additional context

Docs here: https://maplibre.org/maplibre-gl-js/docs/

pulsejet commented 3 months ago

This would be a major refactor and require significant time investment.

I've not experienced any slowness or heard complaints about leaflet yet. What kind of hardware and platform are you on?

RayBB commented 3 months ago

My pixel 4a is a bit old but not that bad. I actually think it is a bit more laggy with the screen recording. In the screen recording the first half or so is with memories and the end is what it looks like onthegomap.

Probably not worth a big time investment now just to make maps a bit faster on older devices. However, if it could be not too much time with something like https://github.com/maplibre/maplibre-gl-leaflet then I'm sure folks would appreciate it :)

https://github.com/pulsejet/memories/assets/921217/e24ebe66-6628-4c11-aea5-9f246f8dba13

pulsejet commented 3 months ago

That is quite slow, odd. I'll look into this, we do use the vue binding of leaflet though, so that'll be further extra work. Plus all the animations are patched on.

s4n-cz commented 3 months ago

That's odd. I tried the map on my old Pixel 3a and the experience is much better than the video demonstrates. I am really happy with the way how the Leaflet map works.

Some details:

RayBB commented 3 months ago

For context, I was using FF for android in that video.