Quickstart ​
Try It First ​
No system at hand? Two ways to see abap2UI5 run before anything is installed:
- The playground compiles the framework in your browser: write ABAP on the left, watch the app run on the right, nothing to install.
- The sample catalog lists over 700 working apps, each with its ABAP printed in full and a button that runs it - a live demo of every pattern the cookbook describes.
Both are also where to send a colleague who wants to see it before reading on.
Before You Start ​
Four things the three steps below assume:
- abapGit is installed on the system — the one-time tool that pulls abap2UI5 in. New to it? Follow the abapGit installation guide; the abapGit page says what the project uses it for.
- Developer authorization, plus the right to create and activate an ICF
node in
SICF— on many systems a Basis task, so ask early. - A package for the handler class. A local
$TMPpackage is fine for a first look; a transportable one comes with Productive Usage. - The browser reaches the OpenUI5 CDN, or the system serves UI5 itself — see Bootstrapping for the second case.
1. Install the Framework via abapGit ​
Pull abap2UI5 with
abapGit. For anything beyond a first look, pull a
release rather than main —
see Productive Usage for why.

ABAP Cloud
On BTP ABAP Environment and S/4 Public Cloud, use abapGit for Eclipse (ADT) and mass-activate the pulled objects afterwards — the S/4 Public Cloud page walks through it screenshot by screenshot, including the two link choices that cannot be changed later.

The framework is everything you need: the HTTP endpoint you create next serves the UI5 frontend itself, so there is no separate frontend to deploy. For a launchpad or a Fiori Elements host, the frontend can also be deployed as an app of its own into the UI5 ABAP repository — see Fiori Launchpad.
2. Set Up HTTP Handler and Service ​
Create a package and define an HTTP handler class. Use the ABAP tab for Standard ABAP systems (R/3 NetWeaver, S/4 On-Premise / Private Cloud); use the ABAP Cloud tab only on BTP ABAP Environment or S/4 Public Cloud:
CLASS zcl_my_abap2UI5_http_handler DEFINITION PUBLIC.
PUBLIC SECTION.
INTERFACES if_http_extension.
ENDCLASS.
CLASS zcl_my_abap2UI5_http_handler IMPLEMENTATION.
METHOD if_http_extension~handle_request.
z2ui5_cl_ui5_http_handler=>run( server ).
ENDMETHOD.
ENDCLASS.
CLASS zcl_my_abap2UI5_http_handler DEFINITION PUBLIC.
PUBLIC SECTION.
INTERFACES if_http_service_extension.
ENDCLASS.
CLASS zcl_my_abap2UI5_http_handler IMPLEMENTATION.
METHOD if_http_service_extension~handle_request.
z2ui5_cl_ui5_http_handler=>run( req = request res = response ).
ENDMETHOD.
ENDCLASS.
Next, use transaction SICF to create an HTTP service and enter your handler class in the service's Handler List tab, then activate the node:

Security
abap2UI5 talks only to the HTTP service you define, giving you full control over accessibility, authentication, and other security aspects.
ABAP Language Versions
The handler above is the one place the distinction matters. Your apps are independent of it — you are free to choose whether to build them with ABAP Cloud compatibility, whichever handler this system runs.
3. First Launch ​
Open the HTTP endpoint in your browser — in SICF, right-click your service node and choose Test Service (the URL looks like https://<host>:<port>/sap/bc/<your_service>). This startup page is also where you will launch your own apps later:
Press
check to verify your installation, then launch the bundled test app to confirm everything works.
You should now see the page of the startup app. That is the whole install verified: abapGit pull, handler, service and app class. If you see something else instead:
- The browser shows an ICF error page or a plain 404 — the request never
reached the handler. In
SICF, check that the service node is activated (right-click → Activate Service) and that the URL path matches the node. - A logon prompt you did not expect, or a 401/403 — authentication is the ICF node's job, exactly as for any other service. Check the node's Logon Data tab, and see Security for how access to the endpoint is controlled.
- The startup page never appears, or stays white — open the browser
console (
F12); a bootstrap problem such as a blocked UI5 CDN logs there. Systems without internet access must serve UI5 themselves — see Bootstrapping.
Next Steps ​
The framework is installed and verified. Hello World is the next page: it is the smallest app that can exist, how to start it, and what each line of it does.