Inspiration
We took inspiration for our application from the Jane Goodall Institute challenge to create a seamless conservation map management system. When constructing our application, we wanted to focus on building a system that mimics Github as a version control system, only for maps instead. We would allow any stakeholders/experts to contribute to the map directly through our application, and also allow GIS users/admins to manage “branches” and “commits” and virtual audits of the map through simply a click of a button, all within our application itself.
What it does
Tacare Mapshare is a map version control system similar to git, for the Jane Goodall Institute’s conservation action plans. The web application essentially allows JGI’s experts and stakeholders to submit requests for modifications to the central map, which is then sent for approval by admins to all fellow stakeholders, and subsequently merged with the main branch, or closed according to the received responses.
When not logged in, one can:
- View a visualization of the master branch
As an expert/stakeholder, one can:
- View all branches & their commits (their own and others’)
- Create a new branch from the master branch and make modifications to be approved
- Submit commits/modifications on top of their own or other’s branches
- Approve and deny the merging of branches through DocuSign
As an admin, one can:
- View all branches & their commits (their own and others’)
- Send a new branch for virtual audit
- Send an existing branch for a re-audit if necessary
- Merge branches with the master branch
- Close branches
- Revert commits/modifications within a certain branch
All the above functionality is built directly into our application without the need to leave the application.
How we built it
The web application was built with ReactJS along with the ArcGIS JS API for all of our map rendering and editing. The backend server was created using Express.js, along with MongoDB for our database. Finally, the DocuSign API was used for the virtual audit feature.
Challenges we ran into
We wanted to go further with our solution, and have a system that would allow experts to make modifications themselves without relying on admins, and have it possible for admins to manage all branches at once all within our application without having to edit hosted feature layers through ArcGIS online. Our biggest challenge was figuring out how to make this vision possible. We would have to ensure experts would be able to edit the map within the application itself and store the map data in the form of a “commit” on a “branch”. As hosted feature layers on ArcGIS online simply would not make it easily achievable, we decided to the next step and with lots of effort, we managed to store and manage map data (branch & commits) within our database and render these features onto our ArcGIS map client-side using the ArcGIS js API.
Accomplishments that we're proud of
We're proud of putting the entire application together and connecting the application with a variety of technologies some of which we had never worked with before (e.g. ArcGIS).
What we learned
For this hackathon, we learned to use a variety of services that we had never used before, including DocuSign APIs and Esri ArcGIS.
What's next for Tacare MapShare
While we managed to achieve a fully functional application with the infrastructure in place for multiple conservation types, in the future we could create more efficient merging algorithms for branches as well as generate visuals showing the difference between commits (insertions and deletions) similar to Github.


Log in or sign up for Devpost to join the conversation.