Inspiration

The problem: To develop an open source collaboration system to work on maps + a system to allow virtual signing(audit) of the developed maps

Our Solution: We drew inspiration from version control systems such as GitHub to develop a workflow to allow the clone-edit-review-merge cycle commonly used in the software development world. This was adapted to the particular case of maps as was required

What it does

ChimPrint is a system to allow open source collaboration from conversationalists to edit and manage maps that represent chimpanzee habitats

How we built it

  • Frontend: HTML, CSS, Vanilla JS
  • Backend: Flask
  • IDE: VS Code
  • Version Control: Git and GitHub
  • Database: FlaskSQLAlchemy
  • API: DocuSign eSign, ARCgis js API

Browser Support

  • Firefox: version 4 and up
  • Chrome: any version
  • Safari: version 5.2 and up
  • Internet Explorer/Edge: version 8 and up
  • Opera: version 9 and up > Note: Support for modern mobile browsers is experimental. The website is not responsive in mobile devices until now.

Challenges we ran into

  • designing a map editor using the ARCgis API was difficult since it was hard to integrate both drawing and editing toolbars into a single map
  • integrating the DocuSign API to use JWT was difficult but the documentation provided helped a lot
  • finding ways to capture screenshots of the ARCgis map was also difficult but it had provided support for the same

Accomplishments that we're proud of

The general look and feel of the website and how we managed to come up with an open source system to help conservationalists collaborate with each other

What we learned

  • We learned to better use flask, css, html, js and flasksqlalchemy
  • We learned to use the DocuSign API and also the JWT(Json web token) method of authenticating requests
  • How to use the POSTman tool for testing API calls

What's next for chimPrint

  • To build a more robust system providing greater security and control
  • Adding more features to the system to provide better map editing capabilities
Share this project:

Updates