Create a resource to aid collaboration and information sharing within Giveth and wider community by:
Creating an interactive map showing Giveth.io project locations
Layering on partners, regional experts, regional info links, refi network etc. in next phase
Why?:
In the recent donor survey stewarded by @JakeS (Donor survey results) - one of the findings was that donors would like to be able to search projects by location to donate to projects near them or their area of interest.
Goal:
Through an interactive map, make it easy to see where a project is based, enabling users of the platform to discover where projects are making an impact; and in doing so:
bring donors and projects together
help projects to network and support each other
increase engagement on platform
increase donor support on platform
better support projects
aid collaboration and information sharing within Giveth and beyond
Issue:
Regional project information is not easily or visually accessible on Giveth.io
Data for project location in our database is not complete and not currently standardised on the platform
Proposal:
@santigs & I collaborated on the following proposal to:
Create an interactive, on-line map and plot project locations showing basic info: name, location, Giveth.io link, verification status
Output with HTML so that it can be embedded in any webpage
Layer 1: Plot Giveth projects
Projects’ data
Have two location fields in Giveth database a) standardised country b) standardised town/city
Clean-up, standardise and complete existing project location data
Extract project name, location, Giveth.io link, verification status data into .csv and translate location data into decimal coordinates using a simple lookup (simplemaps.com provides decimal coordinates for around 43k towns and cities in the world)
Create Map
Create interactive map using Python ‘folium’ library. Populate with .csv file containing complete and cleansed project data, using Python
Colour code data points to represent verified and non-verified projects; create pop-up for each project containing basic info eg. Name, location, Giveth.io project link
Ask Design team to GIVstyle to the map with some Giveth branding
Map can be embedded with HTML into any webpage
Considerations / tbd
Many projects have not provided specific location data: particularly virtual, global or multi-location projects – there’s a decision to be made on how to best categorise these projects and display them on the map. Other projects have left this field blank.
What do we do about Giving Block projects? Proposing to leave these projects out of scope.
Testing
Tested this process and the code using a small amount of ‘test’ data.
Data is easy to load and colour-code from the .csv table.
Proposed Next Phase - wider community impact!
Goal:
To network our wider ReFi community by loading other regional information points onto our interactive map, creating a powerful visual index of our wider community. For example, we could add a layer showing:
‘Area of expertise’: groups / individuals by their regional area of expertise (could be speakers, supporters, mentors, event organisers etc)
‘Area of interest’: groups / individuals by their regional area of interest (could be donors, investors, event organisers, collaborators)
‘Resources / info links’: a library based on regional relevance
Anyone can add publicly-available info to .csv table - ie website, Twitter links and bio. Proposing to define some kind of curation process to maintain quality of information
Decimal coordinates will auto-populate
Only live links can be added, to ensure info remains up-to-date with minimal maintenance
Map can be updated (weekly, bi-weekly, monthly - tbd) with simple .csv upload ensuring minimum maintenance
Love it! Love it! Love it! Looking forward to seeing it active.
Do you think it would be a good idea to have a “recommendations” tab or some way people could recommend projects in certain countries or areas to this map area?
Also, I know we have been looking for a way to endorse getting our projects verified, maybe we could use the map as a way to do that. Only for verified projects?!
Last thought, when power boosting happens those projects would have a beat or thumping pin on the map.
Just random thoughts…maybe none of them hit, make sense or would add too much work.
Not sure if this helps/not Sobol.io maybe could be used (it has a global map setup already etc) maybe setting up a new account, and maybe add each project lead to it, and they can add their location/contact info. and it would show on the map. (i think we already have a sobol.io account, this would be seperate, but controlled by a few of our team) Just thoughts.
Why don’t we have this on our website? We should have the project location data already and we could generate a map as a “view” or “filter” on the Projects page.
Thanks @markop for your ideas on how it might work / look on the website. We do already have the project location data but it’s not standardised and not complete. We also need to consider how to treat projects that exist on-line etc.
I believe it has some ability for such. ( i think we already have an account on sobol?) i had to setup one for …another entity. (discord bot connection and all ) i dont use sobol much myself however. its mostly for visual sake. (this use case exactly)
Giveth could apply to see if eligible for ‘Google for non-profits’, which includes additional Google Maps Platform credits, amongst other perks and should give us ‘premium’ access to ‘development’ features in Google Maps Platform.
@clara_gr and I have started working on the first version of the project’s map using Google MyMap. We have uploaded some of the projects to show you how they can be seen on a worldwide map. There are some projects missing due to incorrect location data but you can have an initial idea.
Hi, I’m @remygalan, really like this forum post, i would like to participate actively in the development of this feature.
I’m currently learning more about Giveth.io architecture following your (docs) and (repos) and maybe have some ideas that could may integrate into Giveth to support Interactive Map native; among these ideas:
Adding spatial support in Giveth Postgres DB (PostGis)
Adding spatial support in Giveth Backend at impact-graph and TypeORM Mapping
Optionally integrate Mapping API or library into Giveth Frontend (LeafLet, OpenLayers or any other FOSS alternative)
Code Map library to register (projects, users and/or organizations) locations
Use Map library to query adn deploy (projects, users and/or organizations) locations
After Giveth.io local deployment, i got some progress in:
Installing spatial support (Postgis) in local Giveth Postgres DB.
Adding spatial column to entity in TypeORM (still some migraton issues).
Planning testing development of Map library in Giveth Front (still some installation issues with yarn)
Hopping this help and add some to discution, greetings.