Afaik, Nanostores need SSR in the setup I used, so for now, the build will have to be deployed on a node server.
I could have used a full Vue app to avoid this, but oh well, nothing we can't refactor ; and it just works anyways. Plus it would have meant switching to a vue leaflet wrapper that hasn't been maintained in years.
Can always change it later.
The implementation forces Vue to attach vanilla event handlers, because their VDom doesn't bubble up and there's no way for it to easily communicate with Astro components.
Nanostores aren't an option because .astro files are rendered on the server, so the store can't be used client side (would be nice if it did tho!!!)