Offline HTML Form Renderer

2016 GSoC Project Idea

This project is being considered as a potential project for Google Summer of Code 2016. If you are a potential intern and are interested in working on this project, please discuss it in detail with the mentor(s) listed here before submitting your internship proposal.

Primary mentor

 Samuel Mbugua

Backup mentor

Simon Savai

GSoC student

TBD

Abstract

In order to start collecting data using the mUzima mobile application, users must write HTML form following certain guideline. At the same time, the OpenMRS HTML Form Entry module allows user to create a much simpler custom markup to create form. However, the custom markup relied on server side processing to generate the actual HTML form. This project will aim to create viewer for the artifact generated by HTML Form Entry outside OpenMRS.

The viewer must be able to perform the following:

  • Display the entire form the way it is displayed in OpenMRS.
  • Validate the entire form the way it is validated in OpenMRS.
  • Collect and submit data from the form.
  • The expected data format coming from the form is in JSON.

Objectives

  • Create processor for HTML Form custom markup using JavaScript.

  • Create viewer to display the entire HTML Form.

Project Champions

Extra credit

  1. Create a Muzima HTML Form designer

Suggested timeline

April 1 – May 1 (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 to further understand and agree on the scope and requirements of the project.

May 2 – August 1:

  • Development phase
    • Create processor for HTML Form custom markup using JavaScript and the expected data format coming from the form is in JSON (by May 25)
    • Create viewer to display the entire HTML Form, including to (by June 30)
      • display the entire form the way it is displayed in OpenMRS
      • validate the entire form the way it is validated in OpenMRS
      • collect and submit data from the form.
  • Testing phase and refine phase (by July 10)
  • Documentation and Demo (by July 20)

Resources