...
The OpenMRS Atlas provides a voluntary registry of OpenMRS implementations all over the world. The server code was originally written using PHP and has been adapted a few times over the past decade. During GSoC 2016 and 2017, a new version of the Atlas server code was written in node Node.js as the Atlas 3.0 Project, but this new, node-based server code was never fully deployed in production. During In 2017, the the broader OpenMRS infrastructure was migrated and updated so all services are deployed using Docker and our single-signon was switched to use LDAP. As a result, some of the functionality of the PHP-based Atlas has been lost. Given users can could no longer authenticate to create or update their markers and, by default, untouched markers fade over time, the existing markers are beginning to disappear from the Atlas!OpenMRS Atlas was literally fading away in disrepair.
Purpose
The goal of this project is was to address the remaining tasks to bring the node-based OpenMRS Atlas into production. This will include included some code changes, some additional features (most importantly, adding LDAP support), and ensuring the application can could be deployed and configured by our infrastructure (i.e., using Docker).
...
- Implement Login through LDAP (Done!)
- Support addition, updating, and deletion of markers (Done!)
- Check and store whether user is an admin (Done!)
- Create an admin page (Done!)
- Get the Atlas Module working (Done!)
- Examine and Document the API (Done, but updates are expected)
- Add some styling to the login page (Done!)
- Make it easier for a user to spot his own markers (By displaying a list/coloring markers/etc.) (Done!)
...
- Implemented search for markers
...
- Created a data page
...
Resources
- Atlas 3.0 Project (also, this thread in OpenMRS Talk)
- Atlas 3.1 Talk Thread
- Blog - Weekly progress on the project is documented here
- openmrs-contrib-atlas - node
- openmrs-contrib-atlas (2.1) - php - current production
- openmrs-contrib-ansible-docker-compose - used to create a local staging LDAP server
- Docker files
- CI build
- JIRA board
...