OpenUI5 is the open source version of SAPUI5 which in its core is a JavaScript library that after leaving the SAP niche became openly accessible for public. While there are many other useful libraries why a developer should consider this new open source JavaScript library? To answer this, two things can be stated. Firstly, UI5 not only concerns business software. Basically it has built by developers working for SAP. Secondly, in building an open source library they certainly have used many other open source libraries and had a consistent focus on open sourcing the library for public use.
What is OpenUI5?
OpenUI5 is a JavaScript UI library that consists of rich features and offers extensive range of UI controls. It is capable for data binding and delivering models for diverse data sources and offers a truly efficient engine for updating the controls to HTML and creating new controls. Furthermore, it offers full support to Model-View-Controller (MVC) concept, declarative UI building and support for HTML templates.
There is really extensive range of controls and the number of controls as of January 2015 was roughly 200. There are controls for all simple to complex actions including accessibility support, keyboard navigation, touch input and interaction, language support, etc. The UI in respect of visuals also offer a wider choice with a whole range of visual themes. Through modification of the CSS or by utilizing the Theme Designer tool various visual themes can be used in the UI.
As far as security and support is concerned this new library can really offer robust results. Because, originally this UI library is used by SAP for mission-critical business applications in which both security and support are two major considerations. Naturally, you can get robust security features like safeguard from cross-site scripting and other malicious attacks. A powerful tool for error analysis is also integrated in the library to inspect and address in quick time. Lastly, as the one of the biggest enterprise providers SAP on a continuous basis trying to fix the loopholes through regular monitoring and a series of automated as well as manual tests, from unit tests to comparative study of screenshots.
Basically, OpenUI5 is built on jQuery allowing direct application of the language in all UIs. Besides that by tweaking with the controls you can further add more value to UI. It comes packed with other open source libraries like datajs, OData or LESS as well. A plentitude of resource, support, security and adaptability make this new UI library so invincible an option for developers.
History of OpenUI5
Knowing the development process that precedes this now open source library is important. Before coming into Open Source arena, it has been nurtured for years by the SAP developers under a project codenamed internally as Phoenix. SAP itself has embraced UI5 in some of its frontline products including the SAP Fiori apps. SAP Fiori as a new UX design principle launched for allowing seamless accessibility across diverse devices and UI5 with its robust array of controls played a crucial part in the development of this. UI5 allowing device iterations and following of web UI trends can deliver optimum device specific ease and flexibility. Thanks to UI5 adding to the adaptability in SAP Fiori, SAP customers now are able to run same app version without needing upgrades for years.
How UI5 Became Open Source?
UI5 from the very beginning caused a widespread impression that sooner or later it is going to be open source. The perception was not unreasonable as almost all ground principles of UI5 refers to open standards. But still the open sourcing was difficult irrespective of the brewing demands among developers all around. At last the decision had to succumb to huge popularity and demands of SAP developer community for open sourcing the SAPUI5. Undoubtedly, there cannot be a better time to do it than now. Especially because, device adaptability and controls across the development platforms are enjoying more focus than ever. So, UI5 as an open source platform will be more enriched more from extensive use of it by developers.
The Difference Between OpenUI5 and SAPUI5
To be precise the difference between the two lies mainly in licensing. While the OpenUI5 is free and open source version of the same library which is available under Apache 2.0 Open Source license, SAPUI5 is the original version of the UI library that can only be used by the SAP customers enjoying license with their SAP products and services.
Irrespective of this difference in licensing, the essential and core of both the versions are same. That means all core or central functionalities of both the versions are identical in every respect. From the libraries of common used controls to themes, all are same in both versions.
But obviously, there are certain differences that are worth considering as well. The major difference starts with some libraries of more specific and exotic controls that are still not covered by the Apache 2.0 Open Source license. The reasons of this exclusion can be too many. From legal complications, to organizational bindings and disagreements over making everything free, there are various reasons pertaining to this exclusion of certain control libraries from the open source license. The same kind of exclusion of some exotic libraries we have already seen in other open sourcing initiatives as well. So in a certain way it was very much expected.
Beside this technical aspect, there is a slight difference in respect of support for both the UIs. SAP customers because of purchasing the SAP products and using the commercial version of the library get addressed with a support agreement that ensures guarantee by SAP for bug fixing. Such committed support obviously is non-existent with the free and open source UI5. The open source version may have to wait for an upgrade for bug fixes by the SAP.
In spite of this minor difference in accessing a small slice of control libraries and support for bug fixes a vast majority of UI5 remains same in both versions and can be accessed and put to use by developers for free. That is the best part of it.
Why should I use OpenUI5?
Finally, let our discussion face the essential question concerning the reason to use OpenUI5 for web based and native apps. OpenUI5 with its rich set of controls can render an array of advantages for the developers focused on addressing complex issues like device iteration and adaptability. For simple actions like creating a CTA button on a static web page or for simple HTML layout the library can prove to be a lot more than what you need. OpenUI5 can be the ideal library for more complex actions like accessing server-side JSON or XML data and presenting it in the UI with a bevy of user friendly controls OpenUI5 comes to your aid effectively. For creating interactive UI that allows sorting and filtering data by the user in a clean and reliable manner, OpenUI5 should be your library of choice.
OpenUI5 is robust, feature rich, adaptable, friendly to device iteration and demands of interaction for apps and interfaces to be deployed across the platforms and diverse devices including mobile phones to desktop screens.