Contribution Guidelines
Contribution Workflow
We use a Fork-Develop-Pull Request workflow. Whenever it’s the first time you contribute to the project or you are not familiar with Git and/or GitHub, please check the Contribution workflow page.
Write documentation
OpenHospital has a community based documentation created through a wiki (right where this page is).
To contribute to the wiki, please register for an account and then create articles.
Report bugs
OpenHospital uses Atlassian JIRA issue tracking system - https://openhospital.atlassian.net/. Anyone can register for an account and easily report bugs to help improve the overall stability of the product. Please follow these JIRA guidelines when reporting a bug: JIRA Wiki. Following these standards will help JIRA stay clutter-free and up-to-date so legitimate bugs can be quickly addressed. The JIRA wiki also explains how to register for a JIRA account and describes each data field in detail.
Some important take-aways from the JIRA wiki:
Make sure it really is a bug - Questions are best handled in the community forums. If you are unsure if it's a bug, post in the forums and see if anyone else is having the same problem
Provide as much detail as possible, including detailed steps on how to reproduce the bug. Also include a note outlining the intended results from performing the steps - How would it work if the bug did not exist?
Search existing issues before posting a new one. The bug you encountered may have already been reported.
Implement a new feature
Make sure the feature does not exist
Consider discussing the proposed new feature in the forums to allow others to give their opinion and give suggestions
Create a "New Feature" or "Improvement" issue in JIRA issue tracking system. This will be the primary location to interact with OpenHospital developers and finally submit your new feature for review.
Fork OpenHospital's latest sources from the GitHub repository
Submit a Git pull request
Now, wait to hear from OpenHospital regarding your contribution. It is not uncommon for a OpenHospital developer to ask questions, suggest additional improvements or attempt to fix a possible problem with portion of the contribution. This is completely normal. Interact with the developer and work to find a suitable solution. Undoubtedly, OpenHospital is thrilled with community contributions and wants to see them integrated into the product.
Some tips:
It's much easier for OpenHospital's developers to receive several small patches than a huge one, because the latter takes more time to review.
Follow the conventions of the existing code as strictly as you can: pay attention to class names, variable names and all the coding style.
Fix a bug
Similar to implementing a new feature, community members are encouraged to contribute fixes for bugs. Follow these steps to fix a bug you have discovered:
Login to openhospital.atlassian.net and click Issues->Create Issue in the top menu.
Fill in relevant fields as described in the above "File a bug" section, and click Create Issue.
Fork the official GitHub repository
Make your code changes, and test thoroughly. All code fixes must first be implemented and tested on the develop branch of the Git repository. OpenHospital staff will backport the bug if relevant to earlier releases.
Once you code changes are complete and pushed to your Git clone (your fork), you are ready to issue a Git Pull Request.
Issue your pull request against the appropriate lead's git repository clone, reporting the JIRA ticket number.
At this point, the OpenHospital developers will see your pull request and work with you (either in JIRA comments, or in Github comments) to ensure your fix is clean and ready for integration. After responding to any issues, your code will be committed. You should no longer need to update the JIRA ticket and can rest assured your contribution is highly valued and will be acted upon in a timely manner!
Translate the software
We are really thankful for your contributions up to now and everyday we work to evolve OpenHospital software and to ease contributors work. For this reason we decided to start using Transifex as translation tool for our leading product.
Briefly:
Create an account on Transifex and join the team: Transifex OpenHospital Project
Happy translations!
The platform is very user-friendly, just try it! If you run into problems please read these instructions.
Open Hospital powered by ISF
ISF © Informatici Senza Frontiere - ONLUS