Ideas needed to work on the UI of Reference Application

Dear Community,

With respect to the meeting held by members of the OpenMRS community and Design note: https://notes.openmrs.org/2018-01-29-Design-Forum, i am still stuck and not sure of how to implement this features. However i came up with 2 ideas on how i might implement the task

First idea is to setup bootstrap for the reference application as no version of Bootstrap is running on the RefApp

Second idea is to create some kind of boilerplate to bootstrap development process for a developer. The boilerplate will contain bootstrap, open-mrs style guide and a login form. However i am not sure how i could interface this app if completed to the RefApp.

What are your ideas and thought on the solution i have come up with. Please do let me know if i am straying the wrong path.

cc @dkayiwa @malmike @justmesam @patrick @annette @elbertbiggs360

Adding @raff

Can you also take a look at these notes from the last design forum https://notes.openmrs.org/2018-01-29-Design-Forum

Yes, its the same with the one i posted above

Those notes are really insufficient to understand what it is that we’re trying to work on, so let me try to give you some more context.

Four reasons that make sense historically most of the openmrs reference application is built using a custom openmrs UI framework, however to be more open to standard modern development we would like to move away from that. But we don’t want to rewrite the whole application, rather we will start small with just the login and home screens.

So I think the first step is to replace the reference application home page with one that looks almost identical, but is built in plain react or angular (not gdp), and uses REST (instead of a Java controller). The small change is that we should be doing the CSS based off of bootstrap, and use a fluid layout instead of a fixed width one.

Does this make more sense?

2 Likes

Yes it makes sense now, if i have any other challenge i will reach out

Another query @darius does that mean that uiframework has the same fate like legacyui ?And if so, would you encourage a newbie to save the uiframework learning curve time for plain javascript / Angular ,css and gsp as indicated above?

@tendomart Yes UI framework, is slowly being deprecated in favor of Open Web Apps (OWAs) running on REST backends. So the OWA direction is the one recommended for newbies

1 Like

Here is what we have written on http://radar.openmrs.org/

Hold: OpenMRS UI Framework

The 2.x Reference Application was originally built on top of OpenMRS’s custom UI Framework module (though parts of it use newer technologies). We recognize the significant existing usage base of this technology, and there is no imminent need to move away from it on codebases that are already committed. But for new code we recommend more modern HTML+JS+REST approaches.

Adopt: HTML+JS+REST

As the OpenMRS RESTful API has matured, many teams have invested resources into building applications on top of the platform using pure frontend technologies (HTML+JS+REST). This is in line with modern web development trends, and it is the way forward for OpenMRS too. Note that you may still experience some growing pains as we standardize conventions and improve our API documentation. Currently, the OpenMRS community is most familiar with AngularJS JavaScript framework.

I would add that there’s quite a bit of interest in ReactJS, and new OpenMRS-related projects that have the choice to start from scratch are often choosing this instead of Angular 1.x.

Thanks alot @ssmusoke and @darius How will the refactoring affect the progress of the current tickets,whose features are mainly built on tools that are being phased out ?

FYI @hilz041