OpenUI5
OpenUI5 is the open-source edition of SAP's UI5 JavaScript framework, released under the Apache 2.0 license and developed publicly on GitHub. OpenUI5 shares the core runtime and the most used control libraries, such as sap.m, with SAPUI5, but leaves out SAP-only libraries such as SAP Fiori elements, smart controls, charts and the launchpad shell.
Quick facts
- Type
- Open-source JavaScript UI framework (UI5 core and common control libraries)
- Layer
- UI applications
- License
- Apache 2.0
- Relationship
- Same core and technical names as SAPUI5; fewer libraries
- Not included
- SAP Fiori elements, smart controls, charts, launchpad shell, spreadsheet export
- Who works with it
- Web developers, UI architects, open-source tool builders
- Applies to
- SAP BTP and any web hosting; SAP products ship SAPUI5 instead
Layer: UI applicationsWhere it sits ▾
Layer: UI applications
Open the architecture map →How does OpenUI5 relate to SAPUI5?
SAP ships the UI5 framework in two deliveries. OpenUI5 is the open-source one; SAPUI5 is the one integrated into SAP products such as SAP BTP and the ABAP platform. The main difference is the license, not the programming model.
Three facts follow from that shared origin:
- Same core. The runtime, data binding, routing and the most common control libraries, for example
sap.m,sap.ui.layoutandsap.ui.unified, are identical in both deliveries. - Same technical names. Control names, library names and APIs match, so code written against OpenUI5 keeps working when the runtime is switched to SAPUI5.
- Aligned versions. Both deliveries follow the same release line, although SAP notes that version numbers can differ at patch level. The technical information dialog (Ctrl+Alt+Shift+P) shows which version an app actually loaded.
SAPUI5 is therefore a superset: everything in OpenUI5 plus additional SAP-specific libraries. OpenUI5 is the open-source subset of SAPUI5, not a separate framework.
Which libraries are missing from OpenUI5?
A comparison of the library lists published for release 1.154 shows that every OpenUI5 library is also part of SAPUI5, while SAPUI5 adds several dozen more. The gaps that matter most in SAP projects:
| Area | In SAPUI5 only | Consequence for OpenUI5 apps |
|---|---|---|
| SAP Fiori elements | sap.fe.* (OData V4), sap.suite.ui.generic.template (OData V2), sap.ovp | No annotation-driven floorplans |
| Smart controls | sap.ui.comp | No smart filter bar, smart table or smart field |
| Charts | sap.viz, sap.chart, sap.suite.ui.microchart | Charts need another library |
| Launchpad shell | sap.ushell | No SAP Fiori Launchpad runtime |
| Utilities | sap.ui.export, sap.ui.richtexteditor, sap.gantt | No built-in spreadsheet export, rich text editor or Gantt chart |
OpenUI5 still contains a broad set: sap.m, sap.f, the object page layout in sap.uxap, sap.ui.table, the metadata-driven controls in sap.ui.mdc, the flexibility libraries sap.ui.fl and sap.ui.rta, integration cards and the SAP Horizon theme library. The list changes between releases, so check it for the version you target. OpenUI5 covers the building blocks of a full web app, but not the SAP layers that generate or host SAP Fiori apps.
When should you use OpenUI5?
Use this decision criterion: if the app depends on an SAP product's runtime or on an SAP-only library, use SAPUI5; otherwise OpenUI5 is a valid choice.
OpenUI5 fits when:
- the app runs outside SAP products, for example a public web portal or an internal tool on a non-SAP backend;
- the project is itself open source, such as a UI5 tool, sample or custom control library, and must not depend on SAP-licensed code;
- a team is learning UI5 and wants a freely available runtime and documentation set.
SAPUI5 fits when:
- the app runs in the SAP Fiori Launchpad or SAP Build Work Zone, which load the SAPUI5 runtime anyway;
- the app uses SAP Fiori elements, smart controls or SAP charts;
- the app is delivered on the ABAP platform or SAP BTP, where SAPUI5 is part of the product.
For Alder Manufacturing, a supplier self-registration page for Cedar Office Supply on a non-SAP web server is an OpenUI5 candidate; a purchase order list report in the launchpad is not. OpenUI5 is the right choice when independence from SAP product licensing matters more than SAP-specific libraries.
Where does OpenUI5 stop?
- No generated floorplans. Without SAP Fiori elements, list reports and object pages must be built by hand with standard controls, so the effort profile matches freestyle SAPUI5, not annotation-driven development.
- No launchpad runtime of its own. Apps that should run in the SAP Fiori Launchpad run on the launchpad's SAPUI5 runtime, not on OpenUI5. In practice, an OpenUI5 app that moves into an SAP landscape becomes an SAPUI5 app.
- Persistence for flexibility is external. The flexibility libraries are included, but storing key user and end-user changes productively needs a backend: the layered repository of an ABAP system or SAP BTP services. The browser-storage connectors are meant for testing.
- Support model. OpenUI5 bugs and feature requests are raised publicly as GitHub issues; whether an SAP support contract covers a given OpenUI5 use depends on its terms.
These limits follow from the split itself: OpenUI5 is the framework, while SAPUI5 adds what SAP's own products need on top.
What are common mistakes with OpenUI5?
- Starting on OpenUI5 and discovering a dependency late. A project that later needs smart controls, SAP Fiori elements or spreadsheet export has to switch to SAPUI5. Fix: list required libraries before choosing the delivery.
- Equating OpenUI5 with SAP Fiori compliance. OpenUI5 controls follow the SAP Fiori design, but layout, navigation and wording decide whether an app follows the SAP Fiori Design Guidelines. Fix: review the app against the guidelines, not just the controls.
- Mixing deliveries in one landscape. Bootstrapping some apps from the OpenUI5 content delivery network and others from the SAPUI5 one makes version comparisons and troubleshooting harder. Fix: use one delivery per app and document it.
- Ignoring patch-level differences. OpenUI5 and SAPUI5 version numbers can diverge at patch level. Fix: check the technical information dialog when a bug appears in one delivery but not the other.
Most OpenUI5 problems are scoping decisions made too early, not defects in the framework.
OpenUI5 vs. SAPUI5: what is the difference?
| OpenUI5 | SAPUI5 | |
|---|---|---|
| License | Apache 2.0, open source | Part of SAP product licenses |
| Libraries | Core, sap.m, sap.f, sap.uxap, sap.ui.table, sap.ui.mdc, flexibility, themes | Everything in OpenUI5 plus SAP Fiori elements, smart controls, charts, launchpad shell and more |
| Delivered with | Public download and content delivery network | SAP BTP, ABAP platform (SAP_UI component), SAP S/4HANA |
| Typical use | Web apps outside SAP products, open-source tools, learning | SAP Fiori apps in SAP S/4HANA, SAP Fiori Launchpad and SAP BTP |
OpenUI5 and SAPUI5 share one programming model; SAPUI5 adds the SAP-specific libraries that SAP Fiori apps in SAP products rely on.
FAQ
Is OpenUI5 free for commercial use?
Yes. OpenUI5 is released under the Apache 2.0 license, which permits commercial use, modification and distribution under the license's conditions, such as keeping the license and notice files. Teams should still run their usual open-source compliance review before shipping.
Can I use SAP Fiori elements with OpenUI5?
No. The SAP Fiori elements libraries, for OData V4 and V2, ship only with SAPUI5. An app that needs list reports, object pages or other annotation-driven floorplans must run on SAPUI5, which is available through SAP BTP and the ABAP platform.
Will an OpenUI5 app run on SAPUI5?
In general, yes. OpenUI5 and SAPUI5 use the same technical names and APIs, so an OpenUI5 app keeps working when the runtime is switched to SAPUI5. The app then can also use SAPUI5-only libraries, provided a matching SAPUI5 version is available.
Does OpenUI5 include the SAP Horizon theme?
Yes. The SAP Horizon theme library is part of the OpenUI5 delivery, together with the Quartz theme family. OpenUI5 apps can therefore look like current SAP Fiori apps, even though they lack SAP-only libraries such as SAP Fiori elements.
Is OpenUI5 the same as UI5 Web Components?
No. OpenUI5 is a full application framework with models, routing and controls. UI5 Web Components are a separate, framework-independent set of standard web components with SAP Fiori styling, meant for apps built with other frameworks or plain HTML.
Sources
- SAPUI5 SDK: SAPUI5 vs. OpenUI5
- SAPUI5 version information (library list of the current SAPUI5 release)
- SAPUI5 SDK: Deprecated themes and libraries
- SAPUI5 SDK: Bootstrapping SAPUI5 Flexibility (connectors)
- Applies to
- SAP BTP
- Last reviewed