OpenVeda Playbook: OpenMRS
Your guide to contributing to a life-saving open-source medical record system.
1. The "Why": Mission & Impact
- The Mission: OpenMRS is a collaborative open-source project to develop software to support the delivery of health care in developing countries. It is a patient-centric medical record system.
- Your Impact: Your code can directly help doctors and nurses in under-resourced clinics provide better care to patients. This is one of the most directly impactful projects a developer can contribute to.
- Why it's great for your career: Contributing to OpenMRS shows you can work on a complex, enterprise-grade application with a critical mission. It's a fantastic project for learning Java and modern React in a real-world setting. They have a world-class, structured mentorship program for GSoC and other internships.
2. The "What": Tech Stack
- Core Backend: Java (using the Spring framework and Hibernate).
- Core Frontend: A mix of older technologies and a modern React-based frontend (this is the best place to contribute).
- Database: MySQL.
- Key Tools: Jira for issue tracking, GitHub for code, OpenMRS Talk (Discourse forum) and Slack for communication.
3. The "How": Your Onboarding Journey
3.1: Join the Community
- Primary Channel (Talk Forum): This is where most official discussions happen.
- Secondary Channel (Slack): For real-time chat and quick questions.
- Your First Action: Introduce yourself on the Talk forum in the "Introductions" thread.
3.2: The Setup Guide
- Official Guide: They have an excellent, step-by-step guide for new developers.
- OpenVeda Pro-Tip: The OpenMRS community is famous for its "Developer Stages." Follow them! Start at "Stage 1" and work your way up. This structured path is designed to guide you from a newcomer to a proficient contributor.
3.3: The Contribution Workflow
- The workflow is a mix of Jira for tracking and GitHub for PRs. It is very well-documented.
- Key Point: You must claim a ticket on Jira before you start working on it. A PR without a corresponding Jira ticket will not be accepted.
4. GSoC History & Focus Areas
- Historical Focus: OpenMRS is one of the longest-running and most successful GSoC organizations. Projects are incredibly diverse, from building new clinical modules and improving the React frontend, to working on a FHIR (Fast Healthcare Interoperability Resources) API and developing mobile applications.
- What Mentors Look For: Commitment and communication. They want to see that you are active on the Talk forum, that you follow the developer stages, and that you have fixed at least one or two small "introductory" issues before the GSoC period.
5. Key Repositories to Know
- OpenMRS Core: github.com/openmrs/openmrs-core (The Java backend)
- React Frontend: github.com/openmrs/openmrs-esm-core (The modern frontend)
6. Find Your First Task Right Now
- The Golden Link: Their Jira board has a special filter for introductory tickets.
- Pro-Tip: Find an "Introductory" ticket that is unassigned, read it carefully, and leave a comment asking to claim it.
7. The Unwritten Rules (Mentor Insights)
- Follow the Stages: The Developer Stages are not a suggestion; they are the path. Follow them.
- Jira is the Source of Truth: All work starts with a Jira ticket. No ticket, no code.
- Ask for Help on "Talk": While Slack is for quick chats, detailed technical questions should be asked on the OpenMRS Talk forum so that the answers can help others in the future.