GSoC 2023 Program Administrators
Please see GSoC Admin Guidelines for more information.
Selected Projects for GSoC 2023
Project Name & Outcome
|Project Rating and Length
About the project
O3: Print feature O3 ESM
|"Print this" component in O3 that can be used/configured depending on what the user wants to print. E.g. med list, recent labs, etc. Will need to do review of what people are printing / where in EMR they need/have the print button these days. Some implementers need specific areas of the chart to have a print option; others use general record printouts, e.g. a summary the patient can take with them to other locations in lieu of a digital medical record integration.
Priority frontend UX changes to improve responsiveness. O3 ESM
We have a ton of designs for 3.x that show how the frontend UX should change based on screen size or device (e.g. large desktop, small laptop, or tablet). Much of this responsiveness still needs to be implemented consistently throughout the application.
Watch this video for more information.
|It's time to clean up our SDK and improve the developer experience.
We currently have a bunch of forms written in O3 in vanilla React. These forms, though functional, are not the most performant or extensible and for the most part, lack validation. React Hook Form offers easy-to-use validation out of the box, performance and tiny bundle size. The task is to refactor existing forms to use the React Hook Form library as well as Zod for schema validations.
|At present, there are already a few E2E tests running for the openmrs-esm-patient-management repository and more coverage is expected. The goal of the project is for someone to extend the E2E tests for openrms-esm-patient-chart and openmrs-esm-core using the playwright framework. The tests will be set up to automatically validate the user interface based on specific workflows.
O3: Draw on a Body Diagram O3 ESM
|OpenMRS is a medical record system that has previously allowed the uploading and visualisation of patient conditions through diagrams. This feature has been critical in helping doctors better explain patient conditions to their patients. However, the module lacked certain essential functionalities that could improve the user experience. Therefore, this project aims to improve the diagramming feature in OpenMRS by allowing the upload of any diagram as an image, annotation of certain areas of the diagram with different shapes, saving and retrieving these diagrams.
The potential goals for this year could be (but are not limited to):
2. Increase the test coverage of the app (due from previous GSoc Project)
3. Migrate remaining Java classes of the code to Kotlin
FHIR: Add support for FHIR PATCH operations FHIR
OpenMRS is using the FHIR API more and more in place of the REST API. However, the FHIR API is, by default, quite verbose. Supporting PATCH operations would allow us to support partial updates to FHIR resources without needing to send the whole resource from the client to the server.
OpenMRS consists of several micro frontend modules and repositories, most of which have unit and integration tests written by individual developers. However, these tests exhibit inconsistencies due to the diverse testing strategies used by different developers. To address this issue, there is a need for a consistent and comprehensive test strategy or framework for the unit and integration tests of OpenMRS3, aimed at achieving a high level of test coverage.
Look at here for more info on the full GSoC 2023 program timeline.
- FINISHED GSoC 2023 preparations
FINISHED January 23: Mentoring organizations can begin submitting applications to Google
FINISHED February 7: Mentoring organization application deadline
FINISHED February 22: List of accepted mentoring organizations announced
FINISHED February 22 - March 19: Potential GSoC contributors discuss application ideas with mentoring organizations
FINISHED March 20: GSoC contributor application period begins
FINISHED April 4: GSoC contributor application deadline
FINISHED April 27: GSoC contributor proposal rankings due from Org Admins
- FINISHED May 4: Accepted GSoC contributor projects announced
FINISHED May 4 - 28: Community Bonding Period. Students get to know mentors, read documentation, prepare for work on their projects
FINISHED May 29: Coding officially begins
FINSHED May 29 - August 21: Coding Period for Medium project
FINISHED May 29 - November 6: Coding Period for Advanced project
FINISHED July 10: Mentors and GSoC contributors can begin submitting midterm evaluations
FINISHED July 14: Midterm evaluation deadline (standard coding period)
FINISHED July 14 - August 21: Work Period | GSoC contributors work on their project with guidance from Mentors
FINISHED August 21 - 28: Final week | GSoC contributors submit their final work product and their final mentor evaluation (coding period)
FINISHED August 28 - September 4: Mentors submit final GSoC contributor evaluations (standard coding period) for medium size project.
FINISHED September 5: Initial results of Google Summer of Code 2023 announced
FINISHED September 4 - November 6: GSoC contributors with extended timelines continue coding
FINISHED November 6: Final date for all GSoC contributors to submit their final work product and final evaluation
FINISHED November 13: Final date for mentors to submit evaluations for GSoC contributor projects with extended deadlines