OrganisationCommunity org

UI5 Community

Capabilities9

Provides 9
Build and dev-server toolingUI5Build and dev-server toolingcapabilityServing an app locally and building it for deployment — proxying a backend, transpiling, bundling, and shaping the result for whatever will host it.Custom controls and librariesUI5Custom controls and librariescapabilityExtending the set of controls an app is built from: a control of its own, a wrapper around a third-party widget, or an icon font registered with the framework, packaged so another app can reuse it. Distinct from [Web Components interop](capability:ui5-web-components), which brings in standard custom elements, and from [generators](capability:generators), which scaffold a control project rather than being one.GeneratorsCAPUI5GeneratorscapabilityGetting from nothing to a project that runs, and from a project that runs to one that has the piece you just decided you need. Two different moments: the first is a one-time decision about layout, the second recurs for the life of the project.Integrated frontend dev serverCAPUI5Integrated frontend dev servercapabilityServing a frontend and its backend services together during development, so they can be reached through one local origin. Serving prebuilt files and integrating a frontend toolchain that assembles resources on demand are different requirements.Launchpad pluginsUI5Launchpad pluginscapabilityExtending an application launchpad’s shell rather than an individual app: adding header buttons, user-menu entries, frame areas or background behaviour shared across the apps it hosts. A development sandbox for launching an app is a separate concern.Local developmentCAPLocal developmentcapabilityRunning the whole stack on a laptop against real bindings — the service, the UI and the routing in front of it — without deploying to see a change.TypeScript supportUI5TypeScript supportcapabilityWriting apps and libraries in TypeScript — the type definitions, the module syntax the loader expects, and the build step that gets from one to the other.UI5 testingUI5UI5 testingcapabilityProving a UI still works — unit tests over controllers and formatters, integration tests that drive real controls, and end-to-end runs against a served app.Web Components interopUI5Web Components interopcapabilityUsing standards-based custom elements inside an app, and the question of which control set an app should be built from at all, two concerns that are often answered as one.
Demonstrates 7
Build and dev-server toolingUI5Build and dev-server toolingcapabilityServing an app locally and building it for deployment — proxying a backend, transpiling, bundling, and shaping the result for whatever will host it.Custom controls and librariesUI5Custom controls and librariescapabilityExtending the set of controls an app is built from: a control of its own, a wrapper around a third-party widget, or an icon font registered with the framework, packaged so another app can reuse it. Distinct from [Web Components interop](capability:ui5-web-components), which brings in standard custom elements, and from [generators](capability:generators), which scaffold a control project rather than being one.Integrated frontend dev serverCAPUI5Integrated frontend dev servercapabilityServing a frontend and its backend services together during development, so they can be reached through one local origin. Serving prebuilt files and integrating a frontend toolchain that assembles resources on demand are different requirements.Local developmentCAPLocal developmentcapabilityRunning the whole stack on a laptop against real bindings — the service, the UI and the routing in front of it — without deploying to see a change.TypeScript supportUI5TypeScript supportcapabilityWriting apps and libraries in TypeScript — the type definitions, the module syntax the loader expects, and the build step that gets from one to the other.UI5 testingUI5UI5 testingcapabilityProving a UI still works — unit tests over controllers and formatters, integration tests that drive real controls, and end-to-end runs against a served app.Web Components interopUI5Web Components interopcapabilityUsing standards-based custom elements inside an app, and the question of which control set an app should be built from at all, two concerns that are often answered as one.

Entries69

Group by69 of 69 entries
EntrySignals
Maintains53
@ui5-community/jsx-runtimev0.1.5
Functional boundary

Plugin-based JSX runtime for UI5 views written as .tsx

babel-preset-transform-ui5v7.10.0
none

Babel transformer from modern ES or TypeScript to UI5 module syntax

cds-plugin-ui5v0.17.4
Functional boundary

UI5 CLI middlewares running inside the CDS server

create-easy-ui5v1.1.1
none

npm-init wrapper for the Easy-UI5 Yeoman generator

create-wdi5v3.0.0
none

npm initializer adding wdi5 testing to an existing UI5 app

dev-approuterv0.7.2
none

Dev-time wrapper for the SAP Application Router

generator-easy-ui5v3.11.0
none

Yeoman meta-generator for scaffolding UI5 projects

generator-ui5-addv1.0.2
Quiet

Yeoman generator for UI5 tooling-extension projects

generator-ui5-appv1.0.8
none

Easy-UI5 generator scaffolding a new UI5 application

generator-ui5-control
Quiet

Yeoman generator for UI5 custom controls distributed via npm

generator-ui5-flp-plugin
none

Easy-UI5 generator scaffolding a Fiori Launchpad plugin

generator-ui5-libraryv1.0.10
none

Easy-UI5 generator scaffolding a new UI5 library

generator-ui5-library-webc
Quiet

Yeoman generator for UI5 libraries wrapping UI5 Web Components

generator-ui5-project
Functional boundary

Yeoman generator for UI5 projects holding several applications

generator-ui5-ts-app
none

Easy-UI5 generator scaffolding a TypeScript UI5 application

generator-ui5-ts-app-fcl
none

Generator for a TypeScript UI5 FlexibleColumnLayout app on OData

generator-ui5-ts-flp-plugin
none

Easy-UI5 generator for a TypeScript Fiori launchpad plugin

generator-ui5-ts-library
none

Easy-UI5 generator scaffolding a TypeScript UI5 library

generator-ui5-wdi5
Quiet

Yeoman generator scaffolding wdi5 test configuration into a UI5 app

karma-ui5-transpilev3.6.4
none

Karma preprocessor transpiling UI5 sources via ui5-tooling-transpile

ui5-cc-chartv0.1.2
none

UI5 custom control wrapping Chart.js for line charts

ui5-cc-mdv0.0.7
Quiet

UI5 custom control rendering Markdown to HTML

ui5-fontawesome-libv1.1.0
none

UI5 library adding Font Awesome icon sets to sap-icon://

ui5-journey-recorder
none

Chrome extension generating OPA5 or wdi5 tests from recorded journeys

ui5-middleware-approuterv3.10.0
none

UI5 CLI middleware proxying the dev server through @sap/approuter

ui5-middleware-capv3.3.6
none

UI5 CLI middleware running a CDS server inside the UI5 dev server

ui5-middleware-hmrv0.1.0
none

Experimental UI5 middleware for hot module replacement

ui5-middleware-iasyncv3.0.0-alpha.10
none

UI5 middleware syncing interactions across browsers over websocket

ui5-middleware-indexv3.1.4
none

UI5 middleware serving a chosen welcome page at the root path

ui5-middleware-livereloadv3.4.0
none

Live reload middleware for the UI5 dev server

ui5-middleware-oneloginv3.9.1
none

UI5 middleware logging in with Playwright and reusing the session

ui5-middleware-serveframeworkv3.8.2
none

UI5 middleware serving a locally built UI5 framework

ui5-middleware-servestaticv3.5.1
none

UI5 middleware serving static resources from a path or npm package

ui5-middleware-simpleproxyv3.9.0
none

Dev-server middleware proxying requests to a backend system

ui5-middleware-ui5v3.5.2
none

UI5 middleware including one UI5 application in another

ui5-middleware-webjarsv3.1.4
none

UI5 middleware serving static resources from JAR files (WebJars)

ui5-middleware-websocketv3.2.2
none

WebSocket support for Express-based dev servers such as UI5's

ui5-task-cachebusterv3.4.0
none

UI5 builder task cachebusting standalone UI5 applications

ui5-task-copyrightv3.6.0
none

UI5 builder task appending copyright headers to source files

ui5-task-flatten-libraryv3.1.4
none

UI5 builder task flattening library output for SAP NetWeaver

ui5-task-i18ncheckv3.3.1
none

UI5 builder task checking XML views for missing i18n texts

ui5-task-minify-xmlv3.2.0
none

UI5 builder task minifying XML views and fragments

ui5-task-pwa-enablerv3.4.1
none

UI5 builder task turning a UI5 app into a progressive web app

ui5-task-transpilev0.5.1
none

UI5 Tooling task transpiling TypeScript and ES modules

ui5-task-zipperv3.7.0
none

Build task packaging the UI5 build result as a zip archive

ui5-tooling-lessv3.2.5
none

UI5 CLI extension compiling Less files into CSS

ui5-tooling-modulesv3.41.2
none

UI5 tooling extensions loading npm packages as UI5 modules

ui5-tooling-stringreplacev3.6.2
none

UI5 CLI extension for string replacement during the build

ui5-tooling-transpilev3.13.1
none

UI5 CLI extension transpiling code during the UI5 build

ui5-webcomponents-bundle
none

Custom UI5 Web Components bundle loaded with one script tag

wdi5-cucumber
Archived+1

wdi5 plugin for Cucumber-style BDD tests on Fiori Elements apps

wdi5-fe-selectors
Archived+1

wdi5 selectors for locating controls in Fiori Elements apps

wdio-ui5-servicev3.0.12
Functional boundary

End-to-end testing for UI5 on WebdriverIO with UI5 control selectors

Maintains: samples, sketches and references16
@ui5-community/jsx-runtime-helloworld
Functional boundary

Scaffolded UI5 TypeScript app consuming the JSX runtime

@ui5-community/jsx-runtime-showcase
Functional boundary

Showcase and documentation app of @ui5-community/jsx-runtime

approuterv0.0.1-security
none

Showcase for dev-approuter in front of two UI5 apps

cds-bookshop
none

CAP bookshop showing UI5 development with cds-plugin-ui5

hacking-away-sampleapp
none

UI5con 2022 demo of an end-to-end TypeScript UI5 setup with CAP

ui5-app
none

UI5 app carrying 18 UI5 CLI extensions in one configuration

ui5-bookshop-viewer
none

UI5 app consuming the cds-bookshop server via ui5-middleware-cap

ui5-icon-explorer
none

Live icon browser for the ui5-fontawesome-lib icon set

ui5-lib
none

Sample setup for developing a UI5 library

ui5-module
none

Custom UI5 control packaged as an npm package

ui5-ts-modules-showcase
none

Showcase of consuming npm libraries from a TypeScript UI5 app

ui5-tsapp
none

TypeScript UI5 app consuming custom UI5 CLI extensions together

ui5-tsapp-webc
none

TypeScript UI5 app consuming @ui5/webcomponents

ui5-tslib
none

TypeScript UI5 library with build, linting and Karma tests

ui5-tsmodule
none

TypeScript UI5 module consumed through ui5-tooling-modules

wdi5-workshop
No license

Two wdi5 workshops from UI5con 2022 and Devtoberfest 2022

Details

History29
  • @ui5-community/jsx-runtimedescription.what_it_solves → the Incubation label the documentation site carries, and the TypeScript floor of 5.0 the requirements spec statesImpact assessment against the primary sources. The documentation site the entry already links is built from the showcase, whose page carries the project's own status label: `<span class="jsx-splash-incubation">Incubation</span>` (packages/jsx-runtime-showcase/webapp/index.html, read 2026-10-19), and the session the atlas holds says the same in words, "At the UI5 point this year we announced that there is incubation project started to bring JSX TSX to UI5". The TypeScript floor is "- **NFR-COMP-2.** TypeScript compatibility: 5.0 and newer." from docs/requirements.md, whose own header states "| Document version | 0.1 (draft) |" and "| Status | Proposal |", so the sentence says the spec is a draft proposal rather than presenting the floor as shipped support. TypeScript is not an entry in the graph, so this version has no edge to sit on and stays in prose; the UI5 and Babel floors moved onto their own edges instead. Nothing else in the paragraph changed: every claim in it was re-read against the root README, the package README, docs/jsx-runtime.md and docs/xmlview-to-tsx.md on 2026-10-19 and stands, the coexistence sentence on "One view at a time. XML and TSX views coexist in the same app — the runtime produces the same `sap.ui.core.mvc.View` instances — so you can migrate incrementally and keep the app runnable throughout."
  • @ui5-community/jsx-runtimedescription.when_not_to_use → both of those, and a view that has to stay adaptable through UI5 flexibilityThe project's Devtoberfest session, published 2026-10-09 and held by the atlas as content:devtoberfest-2026-ui5-views-type-safe-tsx, states "at the moment also there is no flexibility support. Uh UF flexibility is not being built in yet." The repository's own documentation does not mention flexibility at all — docs/jsx-runtime.md, docs/requirements.md, docs/gotchas.md and docs/deferred-samples.md were read on 2026-10-19 and none of them names it — so the sentence attributes the statement to the session and links it rather than presenting it as a documented boundary. The two statements already in the field were re-read in docs/gotchas.md on 2026-10-19 and both stand verbatim, including "An HTML-aware renderer plugin is planned that installs an `htmlIntrinsic` in the scope; until then, treat lowercase tags as unusable in JSX."
  • @ui5-community/jsx-runtimerequires[external:babel-plugin-transform-react-jsx].for and requires[artifact:openui5-core].for → the Babel floor of 7.20 with `runtime: "automatic"`, and UI5 1.130 LTS and newerdocs/requirements.md states both as compatibility requirements: "- **NFR-COMP-3.** Babel compatibility: `@babel/plugin-transform-react-jsx` ≥ 7.20 with `runtime: "automatic"`." and "- **NFR-COMP-1.** UI5 compatibility: 1.130 LTS and newer." Each is added to the edge it is about, with that file as a second source beside the README sentence already there, and the UI5 one carries the document's own status, "| Status | Proposal |". The Babel major stays as the package README words it, "Pin the Babel plugin to **v7** (`@^7`)", because the two are not the same claim: the README pins a major, the spec states a minimum within it.
  • @ui5-community/jsx-runtimeidentity.license → Apache-2.0Both the root README and the package README end on "[Apache License 2.0](LICENSE).", and the crawled npm record for @ui5-community/jsx-runtime reports the same SPDX identifier.
  • @ui5-community/jsx-runtimetype_properties.distribution → npmThe type owns the key for a package (CONCEPT-038) and the record stated nothing, which reads as "does not say" while the README's repository layout says of this package "Publishable to npm." and the package README's install step is "pnpm add @ui5-community/jsx-runtime". The sibling packages in the same monorepo are each marked "Not published" and state no distribution.
  • ui5-tooling-transpiledescription.what_it_solves → the `transformJSX` option and the Babel plugin it addsFound while assessing artifact:ui5-community-jsx-runtime, which requires this extension at version 3.12 or later for exactly that option: the record described the transpile step and said nothing about JSX, so the dependency was visible from one side only. The sentence rests on this package's own README, which says of the option that it "includes the [`@babel/plugin-transform-react-jsx`](https://babeljs.io/docs/babel-plugin-transform-react-jsx) into Babels plugin configuration to transform JSX/TSX syntax into JavaScript" (read 2026-10-19). The version the option arrived in is not stated there, so it stays on the requiring edge where the sentence that gives it lives, and nothing here names the runtime, which this README does not mention.
  • dev-approuterprovides[capability:local-development].facets → local_stack_part: App Routercapability:local-development curation on 2026-10-15. The capability now compares its options by the part of the local stack each one starts, and this package's own description states the part. Nothing was entered for the two flags: the registry page carries no README, so whether it resolves a cloud binding itself is not stated anywhere read here.
  • karma-ui5-transpilelifecycle → deprecatedThe README's own notice, which the description already paraphrased, was not recorded as the maker's dated statement. It is quoted here and shown as plain text: the maintainer's claim, not a reading and not a tier.
  • karma-ui5-transpileprovides[capability:ui5-testing] → two quoted sources and the coverage_report propertyThe edge cited the README without a sentence. Coverage is the reason this preprocessor exists for a TypeScript project, and it is the comparison the capability now declares; the README states it in its own words.
  • karma-ui5-transpiledescription.what_it_solves → The same sentence, with why karma-ui5 is needed.The README calls the karma-ui5 plugin obligatory and says the configuration is read from it, which is what makes it a prerequisite rather than a companion.
  • wdio-ui5-servicedescription.what_it_solves → Three sentences on what it drives, how a run reaches an app behind a login, and why the package is named after WebdriverIOThe field held the package's own one-line blurb, which answers the one_line question and not this one. What decides whether this is the tool for a job is that the browser is real and the app is served elsewhere, and that the login is handled by configuration for the providers the documentation lists, with multi-factor authentication stated as unsupported.
  • wdio-ui5-servicedescription.when_not_to_use → Where the login cannot be completed by configuration.The authentication page states multi-factor authentication is not supported and why. That is a fact about the situation a reader is in, which is what this field is for.
  • wdio-ui5-serviceprovides[capability:ui5-testing] → four quoted sources and the test_level propertyThe edge cited the repository without a sentence. The level it answers, end to end, is the comparison the capability now declares, and it is the maintainer's own word for it.
  • wdio-ui5-servicelinks.docs → https://ui5-community.github.io/wdi5The documentation site SAP's own testing page links to as the wdi5 home page, and where the authentication and running pages read for this assessment are published.
  • cds-plugin-ui5description.what_it_solves → A CDS server serves the files under `app/`. A UI5 CLI project is not a folder of files ready to serve: its framework resources are resolved and its middlewares configured by `ui5.yaml`, and until something runs that chain the project needs a server of its own. This plugin runs it inside the CDS server, for a project in `app/`, in the folder `cds.env.folders.app` names, or added as a dependency of the CDS server. Each project is mounted under a path derived from the `metadata/name` of its `ui5.yaml`, overridable in the `ui5.yaml` itself, in the CDS server's `package.json` or through `CDS_PLUGIN_UI5_MODULES`. In a project it is one development dependency and an existing `ui5.yaml`, on [@sap/cds](artifact:sap-cds) 6.8.2 or higher.The paragraph claimed live transpiling, which the README does not mention, and said nothing about the two facts a reader needs: where a project has to sit and what it has to be. Rewritten from the README's own sentences. capire's plugin list is where the transpiling claim comes from, and it is quoted on the capability instead of asserted here.
  • cds-plugin-ui5provides → capability:ui5-dev-server, with what_it_does, sources and two facet valuesThe edge was a bare ref, so the page said the plugin answered the capability and nothing about how. The README supplies both facet answers and the mount-path behaviour.
  • cds-plugin-ui5compat.cds_range → >=6.8.2The README states the floor: "The plugin requires [`@sap/cds`](https://www.npmjs.com/package/@sap/cds) `>=6.8.2`."
  • cds-plugin-ui5flavors → nodeThe README's opening sentence says it is a cds-plugin for the node runtime, so the flavor is stated rather than derived from the artifact type.
  • cds-plugin-ui5identity.license, source_available → Apache-2.0, trueRead from the package's own README licence section, as its siblings in the same repository already record.
  • ui5-middleware-capdescription.what_it_solves → A UI5 CLI project's dev server serves the app, and the CAP services it calls run in a second process started and stopped on its own. This middleware calls `cds serve` and embeds the express middlewares it returns into the UI5 dev server, so one command answers both: it is entered under `server/customMiddleware` in `ui5.yaml`, where `mountPath` sets the url the CDS server answers on and `moduleId` names the npm package the CDS server is loaded from. Its default options are `with-mocks` and `in-memory?`, which start in-process mock services for required services that have no external binding and add a transient in-memory database bootstrapped on each restart. It is the counterpart of [cds-plugin-ui5](artifact:ui5-community-cds-plugin-ui5), which embeds the other way round, the UI5 CLI middlewares inside the CDS server; the repository's own comparison of the six tools that connect a UI5 app to a backend lists both, and separates them on which of the two embeds the CAP server. In a project it is one development dependency of the UI5 project, on [@ui5/cli](artifact:sap-ui5-cli) 3 or higher.The old paragraph said the registry description was the only documentation published and that no README states how it is configured. The package does publish one, with Prerequisites, Usage and a Configuration options section: "- `options`: `<object>` (default: `{ "with-mocks": true, "in-memory?": true }` )", alongside `moduleId` and `mountPath`. Rewritten from that README, and the counterpart named, since the two tools embed in opposite directions.
  • ui5-middleware-capdescription.one_line → UI5 CLI middleware that runs a CDS server inside the UI5 dev server, mounted at a path the UI5 project configures.Nothing in the documentation says the dev server is driven by a backend; the README and the docs site both say a CDS server is embedded inside the dev server, and the `mountPath` option is where it answers: "`ui5-middleware-cap` improves the development experience for the [SAP Cloud Application Programming Model (CAP)](https://cap.cloud.sap/docs/about/) by embedding a CDS server inside the UI5 dev server."
  • ui5-middleware-capprovides → capability:ui5-build-tooling, with what_it_does and the README's own sentences on the middleware, mountPath and moduleIdThe edge rested on the npm one-liner alone, so the page said the middleware embeds the CDS middlewares and nothing about where the server answers or where it is loaded from. Both are stated in the README's Configuration options section.
  • ui5-middleware-capalternative_to → artifact:ui5-community-cds-plugin-ui5The maintainers publish the two as members of one set and compare them in one table. The repository README: "Six tools in this repo can connect a UI5 app to a backend (`cds-plugin-ui5`, `ui5-middleware-cap`, `ui5-middleware-approuter`, `@sap/approuter`, `dev-approuter`, `ui5-middleware-simpleproxy`)." The comparison in docs/backend-connectivity.md is what separates this pair: "| Embeds CAP server | ❌ | ✅ | (✅)¹ | ❌ | ✅ | (✅)¹ |", the first two columns being cds-plugin-ui5 and ui5-middleware-cap. The inverse edge is derived, so cds-plugin-ui5 shows it without being edited.
  • ui5-middleware-capcompat → runtimes node, cds_range >=6.8.1The package manifest declares the floors, "@sap/cds": ">=6.8.1" and "@ui5/cli": ">=3" in peerDependencies, and the README's opening sentence puts it at "the node runtime of the SAP Cloud Application Programming Model (CAP)". On the UI5 door runtimes is how the tool runs and is never read as a flavor.
  • ui5-middleware-caprequires → artifact:sap-cds, artifact:sap-ui5-cliBoth are stated by the README rather than read off a dependency list: it calls `cds serve` internally to build the middleware functions, and "All releases of this UI5 CLI extension using the major version `3` require UI5 CLI V3." The peerDependencies ranges are quoted beside each edge.
  • ui5-middleware-capidentity.author, maintainers → Peter Muessig, actor:petermuessig and actor:ui5-communityThe package manifest names the author, "author": "Peter Muessig". The entry recorded him as a contributor only, which is the weaker claim; cds-plugin-ui5 in the same repository already carries both.
  • cds-plugin-ui5contributors → actor:petermuessigTwo actor files carried the same GitHub login. peter-m-ssig was keyed on a slugified display name — the umlaut in "Peter Müssig" drops out of the slug, so it looked nothing like the crawled petermuessig and nobody spotted the double. Merged onto the login, which is the identity the crawl matches on.
  • cds-plugin-ui5origin_ring → community-orgui5-community is the UI5 ecosystem's community org, the counterpart of cap-js-community. It was absent from the owner table because that table only knew CAP, so this fell through to independent. Found by probing UI5.
  • First entry seenDiscovered via GitHub API, Added by hand, npm registry, capire · plugins, GitHub organisations and accounts, bestofui5, GitHub organisations and accounts · ui5-community.
Profile1
For your agent