Idea to Implement Local App Store for Modules and OWAs

Hi, All,

Now we have OpenMRS AddOns to get the module/OWA information and Bintary to host it. Using the SysAdmin OWA users can search and get module information from the AddOns. They can just click Install to install the modules. I would like to extend this facility to some great user experience and facilities.

Local App Store for the Moduls and OWAs

The idea to extend the AddOns features locally :slight_smile: . Now users want to,

  1. Goto Website to search for the modules
  2. Get the module Information and download the modules
  3. Upload that module to the OpenMRS Server manually

I would like to merge this three steps into one!. Extremely that is the idea behind the Local App Store. I have just created some prototype screen for the idea,

Advantages of this idea,

  • We can provide more flexibility to the users about the modules and OWAs (like an Andriod or Apple Mobile App Store)
  • It will provide the notifications about the new modules and OWAs to the users locally
  • It will check the module update automatically (when user come to App Store) and show the update notifications to the user
  • User’s can provide the module bugs and improvements through the App Store directly.
  • We can allow the user to rate the modules and provide comments about the module locally.
  • No need to go to the external websites to get the module/owa information
  • No need to download from the browser and load it to the module manager. Here we can give direct way

Further, We can combine the installed modules and not installed modules in the server within here. Using some proper icons we can indicate the status to the users using this Local App Store.


We can implement this in two types,

  1. Implement as a New OWA - Local App Store OWA
  2. Remove search and Install page from the SysAdmin and replace this feature at there.

I would like to get your suggestions about this idea :slight_smile:. Please feel free to provide your suggestions here.

cc : @dkayiwa, @darius

1 Like

This was supposed to be a GSoC project last year but a lot of points were made against it. Look at this thread for more information

AFAI I can’t see this OWA anymore? @ivange94 Can you please provide me the end URL?

I am talking about to implement this as OWA to use it locally in the OpenMRS Reference applications. (Not for OWA, I am thinking about MODULES and OWAs)

Makes sense.

But I wouldn’t allow automatic upgrade of modules. Especially major upgrades. It may break things. But the idea sounds interesting. I’ve developed on Odoo before and they have similar feature.

Two things:

  1. There is already a project underway by an Andela team to build an OWA that manages both OWAs and Modules in a unified way. I would suggest joining forces with this effort. For example you could propose how to incrementally move from what’s currently implemented there towards the kind of design you’re talking about. (It’s what’s mentioned here: Add-On Manager Sprint 1 Demo Announcement and I’m sure you’re aware of this already.)

  2. Having a nicely designed App Store would be cool. But considering tradeoffs, and deciding where to invest efforts, I do not think we should build a “Local App Store”. E.g. we already have the Add On Index, and I’d prefer to spend an extra week of effort improving its UX, rather than spending that week building yet another app store codebase, and having to maintain both.

  • I bet we can build this as a screen in the Add On Index webapp (where the user follows a link from their OpenMRS server, and this tells the Add On Index all the currently running versions, which can be put in the application state). The benefit of this is that we can continually improve it as a hosted webapp, rather than building an OWA that has to be deployed to all the servers.

  • The prototype screen looks very nice. I like the way it looks. Taking a quick peek at Chrome’s extensions (chrome://extensions/ if you’re running chrome), I see that they have taken a simpler visual approach of just giving a vertical list of your installed extensions, and then a “Get More Extensions” link.

  • Thinking about the end user here (the administrator of an OpenMRS install) I think there are two user stories:

    1. I want to see if there are new versions of my installed OMODs and OWAs, determine if it makes sense for me to upgrade, and possibly do the upgrade.
    2. I want to find a new OMOD/OWA that will add a desired feature to my OpenMRS install.
  • Seeing two user stories makes me lean towards keeping the screens separate for these two use cases.

  • This is giving me ideas for incremental functional things we could doing in our current UIs, but haven’t been. For example our Module Management UI effectively tells you “You have version 1.2.3, but version 4.5.6 is available. Click to Download”. But how does the user know if they should upgrade or not? We should also show the release dates of those two versions, and show them (a link to) the release notes for all versions between their current version, and the new one. (We could start indexing this in Add On Index.)

  • Also, even though all of this Add-On Management stuff is fun, I think it’s even better to spend that week building some end-user facing functionality. :slight_smile:

2 Likes

@suthagar23 @darius Joining forces on this to better the tools we use would be an awesome endeavor. Looking forward to. cc: @dkayiwa

1 Like

Hi @darius

There is already a project underway by an Andela team to build an OWA that manages both OWAs and Modules in a unified way. I would suggest joining forces with this effort.

Yah, I am watching them and will help to improve that project in a good approach :slight_smile:

I bet we can build this as a screen in the Add On Index webapp

Sounds good to me, then it will make easy access to the OpenMRS users and we can also manage the code base easily. We can think about this idea and try to start with some basic implementations.

This is giving me ideas for incremental functional things we could doing in our current UIs, but haven’t been. For example our Module Management UI effectively tells you “You have version 1.2.3, but version 4.5.6 is available. Click to Download”.

Yes, We need to improve so many things at there. I working some of that right now

In the Add-On Management OWA, Andela team is just developed the OWA management right now. Using that we can only manage installed OWAs in the server.

If we add this type of store with that, It will hopefully fulfill the OpenMRS user’s requirements :slight_smile: .

Cc : @dkayiwa and @darius