Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

1.0 of the Open Web App module was released in late 2015. Great work!

...

Primary mentor

Unlicensed user

Namrata Nehete

Backup mentor

Saptarshi Purkayastha

TBA

Assigned to

TBA

BlogTBA

Abstract

Excerpt

Summary here.

Objectives

  1. Concisely list objectives here.

Extra Credit

  1. Add a wish here list here for future development.

GSoC student

Sandeep Raparthi

Abstract

Currently, in order to extend the functionality of OpenMRS, you have to create an OpenMRS Module. This requires a fair amount of Java, Spring, Hibernate, JSP knowledge as well as knowledge of the OpenMRS Java API design. Furthermore, modules are often tied to particular OpenMRS version and are sometimes dependent on specific versions of other modules. All of these facts increase the barrier to extending the functionality of OpenMRS. With the OpenMRS REST API becoming more mature, it makes sense to be able to allow developers with just HTML and JavaScript knowledge to extend the functionality of OpenMRS. The goal of this project is to enable the use Open Web Apps (OWA) with OpenMRS (as has been done for DHIS2). OWA is a packed HTML/CSS/JavaScript into a zip package with a manifest.webapp file (a json), describing the OWA. The module allows packaging of the OpenMRS reference application components as an OWA that can be used by other OWA or modules.

Objectives

  1. It should be possible to upload an Open Web App to OpenMRS via the UI and the App should function as expected (expand the owa module).
  2. Build the core OpenMRS reference app element into components (suggestion to use Google Polymer)
  3. Add the components into the polymer designer (see packaged as an OWA - designer.zip)
  4. Use the polymer designer to create a webpage from the components 
  5. Package the designed page as an OWA and downloadable as a zip
  6. Allow OWA to be pushed, downloaded, uploaded to/from Modulus.

Extra credit

  1. Build functionality from other modules (charting, reporting etc.) as Open Web App
  2. Build new workflows using the polymer designer and then released as an OWA

Suggest timeline

April 21 – May 19 (Community Bonding Period): 

  • Get to know my fellow peers and co-workers
  • Throughout this period, I will as always be available on IRC to further discuss the proposal with members of the OpenMRS community so that I will be able to adjust or add things that I may have not thought of before.
  • I will be actively engaged in discussions with my Mentor mentor to further understand and agree on what exactly needs to be modified so that OpenMRS will be able to function with an embedded database, while also examining where improvements in the reload module need to be made.My Mentor and I will also be looking at the options presented previously, on how best to approach the deployment of the SDK on various operating systems. This will include the installation itself as well as the use of scripts.the scope and requirements of the project.

May 19 – August 18:

  • Development phase (to be broken down into detailed steps)

...

  • Make UI improvements to the OWA module
  • Add core UI elements, like CSS, Reference app Style guidelines, buttons into a commons open web apps (call it: owa-commons)
  • Add registration elements into the owa-commons
  • Add patient dashboard elements into the owa-commons

Midterm:

  • Add the elements into the designer
  • Add owa to be deployed from within omod files
  • Allow owa-commons to be installed from Modulus
  • Extra credits if time remains

Resources

  1. Modules
  2. REST Web Services API For Clients
  3. https://developer.mozilla.org/en-US/Apps/Quickstart/Build/Intro_to_open_web_apps
  4. http://www.dhis2.org/doc/snapshot/en/user/html/ch28.html