GetTogetherComm / GetTogether

Event manager for local community events
https://gettogether.community
BSD 2-Clause "Simplified" License
472 stars 89 forks source link

More privacy friendly Maps options needed: OpenStreetmap #128

Open MacLemon opened 5 years ago

MacLemon commented 5 years ago

Summary: More privacy friendly Maps options needed

Steps to Reproduce: Create an event location. Look at the location, have Google Maps set multiple tracking cookies on your machine.

Expected Results: Maps should be more privacy respecting to the visitors by using a different map service, or at least offer a choice of maps services with the most privacy preserving one being the general default.

Actual Results: Google Maps is integrated and tracks all visitors, even if the instance owner/admin doesn't want to track visitors.

Regression: All content should only be loaded from the local instance and nowhere else ideally. In case of Maps, this is likely quite complex.

Quote from the https://gettogether.community/about/privacy/

[You can mention Google services here and link to Google's privacy policy if you want].

You must be compliant with GDPR and hence that mentioning of Google is not optional but absolutely mandatory. The same would apply to any other mapping service, but unlike Google, OpenStreetmap does not track their users.

Notes: https://www.openstreetmap.org/ would be a better suited default mapping service that respects user's privacy and offers a lot of helpful local information.

Ideally The site would proxy all the OSM data through itself to abstract any user's connection by only exposing the instance's IPs to the mapping service. This would also reduce load on the mapping servers and allow for speedier connections due tile caching becoming possible. (Would increase server traffic a little, but that's worth the increased privacy protection.)

Version Information: GetTogether 0.8

mhall119 commented 5 years ago

The privacy policy has been updated to explicitly mention Google Maps.

In order to replace it with OpenStreetMaps, we would need somebody to implement the features we use Google Maps for on top of OSM, and also we need to know what the API call limits are on OSM.org

craigmaloney commented 5 years ago

Not sure how things are currently implemented but we could use something like Leaflet to help ease the transition (https://leafletjs.com/)

7usr7local commented 5 years ago

I'd like to see a "User requested" badge/label here :slightly_smiling_face:

brylie commented 5 years ago

Either Leaflet (mentioned above) or OpenLayers would provide an abstraction to support multiple map providers.

What are the features that would need to be implemented on top of the map layer?

mhall119 commented 5 years ago

In addition to showing the map, we need to be able to place pins showing known Places and also to be able to retrieve Place data from the map's data sources based on a clicked location.

craigmaloney commented 5 years ago

Quick thought: Is there the concept of a private place? If not then that would be something to keep in mind (not all places should be places that are exposed to all users).

mhall119 commented 5 years ago

Not yet, but I think there's an open issue for that (and private events altogether)