Once you have read Getting Started as a Developer, and have set up your development environment, you can start contributing to development work.
Prerequisites
Have some basic understanding of the following topics can be beneficial to your work:
Do some code reviews
Here is the list of pull requests that are waiting for review. Reviewing other people's work is one of the great ways of learning about OpenMRS. You can even review code for someone more experienced than you.
Reviews can be as simple as checking to ensure that commits are
- adhering to our code conventions
- free of spelling mistakes
- not missing JavaDoc comments.
More details about code reviews can be found at this Code Review page.
Work on an issue
The code issues ready to be assigned are listed on JIRA. The 25540677 are recommended for beginners. To work on an issue, follow these steps:
Claim an issue.
Review25540677, 25540677, 25540677 or 25540677 below to find an issue of interest to you, claim it, and make your first contribution.
- Include unit tests for your changes.
Make sure you always have unit tests for your code. Remember to also do an "mvn clean install" to ensure that all existing unit tests and yours pass. - Check the effects of your changes on the user interface.
If your changes affect the user interface, please run the web application with OpenMRS SDK to see the effects, and then attach a screenshot, before you send a pull request. - Make a pull request.
After your code has passed the unit test, you can make a pull request on GitHub. Remember to have a look at the Pull Request Tips.
Work on other issues and projects
There are issues and projects of various difficulty levels for you to choose from.
Try Introductory Tickets
The issues linked below are both "introductory" and also "curated", meaning that they have thorough descriptions of how to approach solving them.
Curated introductory issues
key |
summary |
type |
created |
updated |
due |
assignee |
reporter |
priority |
status |
resolution |
Unable to locate Jira server for this macro. It may be due to Application Link configuration.
|
If you aren't able to find an appropriate issue in the list above, you can take a look at the complete list of "introductory" issues, (not necessarily "curated").
Work on Community Priorities
You also have the option to pick an issue prioritized by the community from the community priority Kanban.
key |
summary |
type |
created |
updated |
due |
assignee |
reporter |
priority |
status |
resolution |
Unable to locate Jira server for this macro. It may be due to Application Link configuration.
|
Join a Project Team
Check out our list of active projects, and the teams (or squads) who are actively looking for contributors with a variety of skills to fill different roles. Active Projects & Squads.
Tackle a Big Unassigned Projects
If you are feeling ambitious and ready to tackle a more complex problem, you can work on unassigned projects.