Many may not realize how much effort was put into the v5.0.2 release that significantly addressed core code cleanup and security. Also notable is the implementation of REST api and controller/services patterns along with the much appreciated efforts to get our application look and feel consistent.
Wow, think about just how far OpenEMR has come in the past three releases making this an appropriate time to thank our community of contributors. I do so enjoy working with you folks.
To business.
Now, more so than ever, we have the opportunity to firm up our MVC framework. So let’s do that starting with what everyone purposes this should look like. Based on these proposals we can narrow to a winner and move on to implementation.
So my thoughts:
I think it is of the most importance to stay away from relying on third party frameworks and libraries where we can. Often times I find them overkill, heavy or forcing authors into compromises between what the developer wants to achieve and what the framework allows. Symfony may be an exception due to its component nature and could assist in some areas. For those that immediately think, “Why reinvent” I say, Remember OpenEMR’s life cycle and business model. The simpler we keep an OpenEMR specific framework the easier it is to maintain. Remember I am speaking to our core development/conversions here where we need to still be cognitive of value added add ons that may already exist or for future developments. Those would need to be modular for new while maintaining some compatibility for those already more tightly integrated today.
The most difficult hurdle is agreeing on our model/view transitions. We have to be very mindful of converting existing views without having to rewrite most everything which would likely be the case if we used third party.
So bottom lining it, I believe that front end frameworks are unnecessary(and soon obsolete, imo) as web components are now natively support by most all browsers(thanks es6).
In converting existing php generated html to templates using custom tags and custom elements or more generally, web components, we can almost be assured this support is not going away anytime soon.
I plan to example this process soon converting one of our simler scripts. Perhap @robert.down may be interested with helping in this endeavor.
Anyway, you get where i’m thinking plus, i’m tired of typing. Your turn!