{"ref":"artifact:abap2ui5-abap2ui5-local","page":"/artifacts/abap2ui5-abap2ui5-local","json":"/artifacts/abap2ui5-abap2ui5-local.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"abap2ui5-abap2ui5-local","name":"abap2UI5-local","artifact_type":"package","ecosystem":"abap","domain":"ui-and-frontend-bridge","origin_ring":"community-org","use_as":"dependency","flavors":[{"key":"standard-abap","source":{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"This repository works in both ABAP for Cloud and Standard ABAP. For old releases use the branch `702`."}},{"key":"abap-cloud","source":{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"This repository works in both ABAP for Cloud and Standard ABAP. For old releases use the branch `702`."}}],"description":{"one_line":"The whole [abap2UI5](artifact:abap2ui5-abap2ui5) framework folded into the local classes of one HTTP handler, so an app runs without the framework installed as a package.","short":"abap2UI5 folded into the local classes of one HTTP handler","what_it_solves":"abap2UI5 is normally installed as a package in the system, which is not always possible and collides with an installation already there. This repository combines all of its artifacts into the local classes of one handler class, `Z2UI5_CL_ABAP2UI5_LOCAL`: you copy that class into your system and add your app as a local class beside it, or pull the repository with [abapGit](artifact:abapgit-abapgit) and start the app over the ICF node `/sap/bc/z2ui5_local?app_start=<your app class>`. It writes to its own persistence tables, `z2ui5_t_99` and `z2ui5_t_98`, to stay clear of another abap2UI5 installation in the same system. What you install sits on three generated branches: `standard` for `if_http_extension`, `cloud` for `if_http_service_extension`, and `702` downported for NetWeaver 7.02 and higher. The `main` branch carries the generation machinery and `input/`, a copy of abap2UI5's `src/`.","when_not_to_use":"Not where the framework code itself has to change: `input/` and the three installable branches are overwritten by the workflows on every upstream push, and a framework change is a pull request to abap2UI5. Bug reports and feature requests also go to the abap2UI5 repository rather than this one.","to_build_on_it":"The machinery on `main` is one Python script and the workflows around it: `build_locals_imp.py` runs abapmerge over `input/`, re-adds the local `zif_app` and `zcx_error` additions, renames the persistence tables, switches off the user exit lookup and orders the definitions so the include compiles as one unit. It runs locally with `python3 .github/scripts/build_locals_imp.py input /tmp/locals_imp.abap`, and the script stops on its own assertions when an upstream change breaks one of its assumptions."},"links":{"repo":"https://github.com/abap2UI5/abap2UI5-local"},"type_properties":{"placement":{"value":"in-host","sources":[{"url":"https://github.com/abap2UI5/abap2UI5-local","title":"abap2UI5-local — README","checked":"2026-10-18","quote":"All abap2UI5 artifacts are combined into a single HTTP handler implementation as local classes."}]},"distribution":{"value":["abapgit"],"sources":[{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"Alternatively, pull this repository using abapGit and start via `/sap/bc/z2ui5_local?app_start=z2ui5_cl_my_local_app`"}]}},"maintainers":["actor:abap2ui5"],"part_of":{"ref":"artifact:abap2ui5-abap2ui5","sources":[{"url":"https://raw.githubusercontent.com/abap2UI5/abap2UI5-local/main/AGENTS.md","title":"abap2UI5-local — AGENTS.md","checked":"2026-10-17","quote":"Single source of truth for agents working on **abap2UI5-local**: the delivery repository that folds the whole abap2UI5 framework into the local classes of one HTTP handler class, `Z2UI5_CL_ABAP2UI5_LOCAL`, so that an app can run without any other abap2UI5 installation in the system."}]},"provides":[{"capability":"capability:abap-ui-from-abap","what_it_does":"Carries the abap2UI5 rendering framework as local classes of a single HTTP handler, so an app class written in ABAP renders its UI5 front end with no framework package installed in the system.","sources":[{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"All abap2UI5 artifacts are combined into a single HTTP handler implementation as local classes. This approach makes your app completely independent of the rest of the system or any other abap2UI5 installation."}]}],"requires":[{"ref":"artifact:abapgit-abapgit","for":"Pulling the repository into the system, as the alternative to copying the handler class by hand.","requirement":"conditional","basis":"binding","role":"installation","condition":"the repository is pulled into the system instead of the handler class being copied","sources":[{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"Alternatively, pull this repository using abapGit and start via `/sap/bc/z2ui5_local?app_start=z2ui5_cl_my_local_app`"}]}],"interfaces":[{"key":"icf-node","kind":"ui","protocol":"http","direction":"in","for":"Opening an app in the browser: the ICF node `z2ui5_local` on the `standard` and `702` branches, with the app class in `app_start`; the `cloud` branch ships the HTTP service `Z2UI5_SERVICE_HTTP` with the same handler class.","sources":[{"url":"https://github.com/abap2ui5/abap2ui5-local","title":"abap2UI5/abap2UI5-local — README","checked":"2026-10-17","quote":"The `standard` and `702` branches ship the ICF node **`z2ui5_local`** (service path `/sap/bc/z2ui5_local`, handler class `Z2UI5_CL_ABAP2UI5_LOCAL`)."}]}],"provenance":{"discovered_via":[{"source":"source:github"}],"first_seen":"2026-10-17"},"drafted_with_ai":true,"contributors":["actor:oblomov-dev"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"2 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, not archived"}],"compatibility":[{"label":"Declared for","tier":"good","evidence":"SAP_BASIS 750 and up, in its abaplint config: includes every maintained line to 816"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"good","evidence":"generate_standard green, 2026-10-24"}],"practice":[{"label":"Tests","tier":"poor","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"README 7 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":8,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":8,"forks":3,"open_issues":0,"archived":false,"pushed_at":"2026-10-24","license_spdx":"MIT","org_owned":true,"default_branch":"main","created_at":"2025-02-12T14:46:40Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":5,"other_ci":false,"readme_bytes":7671,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2025-02-12","last_commit":"2026-10-24","commits":349,"contributors":2,"ci_status":"success","ci_run_at":"2026-10-24","ci_workflow":"generate_standard","ci_event":"push","readme_path":"README.md","readme_sha":"47b0d5b1f7d5c14461e31731386f9bf6853e030c","repo_read":"2026-10-26","abap_syntax":{"repo":"abap2UI5/abap2UI5-local","file":"abaplint.jsonc","url":"https://github.com/abap2UI5/abap2UI5-local/blob/HEAD/abaplint.jsonc","version":"v750","floor":"750","checked":"2026-10-26"}},"release_notes":{"license":"MIT","quotable":true,"source":{"kind":"github-releases","url":"https://github.com/abap2UI5/abap2UI5-local/releases"},"format":"github-releases","releases":[{"version":"1.138.0","date":"2025-03-31","date_source":"github","heading":"1.138.0","url":"https://github.com/abap2UI5/abap2UI5-local/releases/tag/1.138.0","sections":[],"hash":"93d852288262a33d"},{"version":"1.137.0","date":"2025-02-13","date_source":"github","heading":"1.137.0","url":"https://github.com/abap2UI5/abap2UI5-local/releases/tag/1.137.0","sections":[],"hash":"e3b0c44298fc1c14"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:abap2ui5","name":"abap2UI5","json":"/actors/abap2ui5.json"}],"contributors":[{"ref":"actor:oblomov-dev","name":"oblomov-dev","json":"/actors/oblomov-dev.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"part_of":{"ref":"artifact:abap2ui5-abap2ui5","name":"abap2UI5","json":"/artifacts/abap2ui5-abap2ui5.json"},"parts":[],"add_ons":[],"answered_through_parts":[]}}