What is OpenMRS?
OpenMRS is an open source electronic medical record (EMR) system, designed for use in the developing world. Since its beginning in 2004, the system has evolved into a medical informatics platform used on every continent, supporting health care delivery and research in an extremely wide variety of contexts. See also:
- The about page (mandatory reading).
- Brief textual guide to OpenMRS (very good for context).
- 16-minute introductory screencast.
- 50-minute tech talk video (2007).
What is the Concept Proposal Module?
- Every OpenMRS implementation is a concept dictionary that defines the medical concepts (questions and answers)
- Each organisation has their own OpenMRS instance which is isolated from other OpenMRS instances
- The Concept Proposal Module aims to let users
- create proposed concepts on their own OpenMRS instance
- send these concept proposals to an official dictionary manager to be review/approved
- track the status of their proposal
- The Concept Proposal Module is actually comprised of 2 sub modules
- Concept Proposal submodule: meant for the users to create proposals
- Concept Review submodule: meant for the dictionary managers to review proposals
- More in depth information regarding this module can be found on the project page
How can I help?
Sign up at Meetup and join us for the hack night next Tuesday! We need humans mostly – project managers, developers, translators, QAs, BAs, XDs...
Install the development VM and play around and get familiar with OpenMRS. If you have any issues we will gladly help you at the hack night.
How do I get started?
- Set up the Vagrant box with OpenMRS: this will allow you to play around with OpenMRS in a local environment and can also be used for local development
- For coders: Set up IntelliJ (any Java IDE should be able to be used but we will suggest and document on IntelliJ)
- Take a look at the Trello Board / Mailing list / GitHub pages for the on-goings
- https://github.com/OpenMRS-Australia/openmrs-cpm: the main CPM code
- https://github.com/OpenMRS-Australia/configuration-master : used for building and deploying to the Go CI Pipeline
- https://github.com/OpenMRS-Australia/openmrs-vagrant: Vagrant box
What Technologies Are Being Used?
BDD via Cucumber
- Spring RestTemplate: http://www.springframework.net/rest/doc-latest/reference/html/resttemplate.html / http://spring.io/blog/2009/03/27/rest-in-spring-3-resttemplate/
- Consuming a RESTful Web Service with AngularJS: https://spring.io/guides/gs/consuming-rest-angularjs/
- Handling exceptions: http://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc
- Services: https://docs.angularjs.org/tutorial/step_11 / https://docs.angularjs.org/api/ngResource/service/$resource
- Filters: https://docs.angularjs.org/guide/filter / https://docs.angularjs.org/tutorial/step_09
- Directives: http://www.sitepoint.com/practical-guide-angularjs-directives/ / https://docs.angularjs.org/guide/directive
- Routing & HTML partials: https://docs.angularjs.org/tutorial/step_07