SampleSampletypeA worked example you read or clone. Evidence: it demonstrates, it never provides.See every one →What this type is →by SAPby SAPoriginPublished by SAP itself. A visible facet, never an input to a reading — a dormant official plugin reads exactly like a dormant independent one.See every one →Starting point

SAP-samples/ui5-cap-event-app

An event-attendee registration app that pairs a freestyle SAPUI5 end-user UI and a Fiori elements admin UI over one Node.js CAP backend, built to show OData V4 draft handling end to end.

The app registers and administers attendees for an event, and uses that scenario to show a complete SAPUI5-and-CAP stack rather than a single layer: an end-user UI implemented in freestyle SAPUI5, a metadata-driven administrator UI generated with Fiori elements, and a Node.js-based CAP backend serving both over OData V4 with Draft functionality to persist non-final datasets. It stops at the demo: the local database runs in memory and is re-initialised after each restart, and deployment considerations such as authentication are left out.

Facts

Last pushLicenceApache-2.0

Where it sits

Lives in
Demonstrates
Draft handlingCAPDraft handlingcapabilityLetting a user edit a record over several requests before it becomes real — saving unfinished changes, locking, and activating a completed draft.Reference appsCAPReference appscapabilityA whole application to read rather than a snippet to copy — somewhere to see how the pieces sit together once there are more than three of them.
Flavors

Who is behind it

SAP SamplesSAP SamplesOrganisationMaintains this
In the atlas: maintains 222
@SAP-samples
maintainerAndreas KunzPersonContributes to this
In the atlas: contributes to 19
@akudev
Andrew BarnardPersonContributes to this
In the atlas: contributes to 2
@andrew-barnard
Brian BernardPersonContributes to this
In the atlas: contributes to 64
@btbernard
Joaquin Recio HuertasPersonContributes to this
In the atlas: contributes to 3, wrote 1
@JoaquinRecio
Peter MuessigPersonContributes to this
In the atlas: maintains 14, contributes to 80, wrote 1
@petermuessig
5 contributors

What it declares

Every artifact

Type
Sample
Origin
By SAP

As a sample

Form
A reference application

Connections2

SAP-samples/ui5-cap-event-app connectionsSAP-samples/ui5-cap-event-appPROVIDES→ demonstrates2demonstrates authoredDraft handlingdemonstrates authoredReference apps

README

quoted from SAP-samples/ui5-cap-event-app under Apache-2.0, read
SAP-samples/ui5-cap-event-app/README.mdOn GitHub

ui5-cap-event-app

REUSE status

Showcase of two UI5 user interfaces, one built with freestyle SAPUI5 (or rather OpenUI5), the other using SAP Fiori elements, with a CAP backend, using OData V4 with Draft mode.

Description

This app uses simple attendee registration and administration for events as an example scenario for demonstrating the data handling and overall setup. The app consists of three parts: an end-user UI implemented in freestyle SAPUI5, a metadata-driven administrator UI generated with Fiori elements and a Node.js-based CAP backend. While the code implements a complete end-to-end full-stack app, it is kept as simple as possible and the main focus is on freestyle SAPUI5 code making use of OData V4 as well as of "Draft" functionality to persist non-final datasets.

Further details about how the functionality is implemented can be found in the documentation.

Requirements

  • Node.js (latest LTS version which supports npm workspaces)

Download and Installation

  1. Clone the project.

    git clone https://github.com/SAP-samples/ui5-cap-event-app
    cd ui5-cap-event-app
  2. Use npm to install the dependencies.

    npm install
    npm rebuild better-sqlite3

    Note: This project uses ignore-scripts=true in .npmrc for supply-chain security. The npm rebuild better-sqlite3 step is needed to compile the native SQLite bindings that are blocked by this setting.

Running the Project

Execute the following command to run the project locally for development (start the CDS server running the admin UI and form UI embedded):

npm start

As also shown in the terminal after executing this command, the CDS server is running on http://localhost:4004/.

For the form UI, you can use user name employee@test.com with password 123. For the admin UI, use admin@test.com and password 123.

Building the Project

Execute the following command to build the project and get one integrated app that can be deployed (build the form UI, admin UI, and CDS server):

npm run build

After building the individual packages, the build results will be copied to the central dist folder. The resulting package inside the dist folder consists of the CDS server hosting the form UI and the admin UI as well as a sandbox Fiori launchpad to start the individual UIs.

To start the generated package, just run npm install and npm start inside the dist folder. This installs the dependencies and starts the CDS server hosting the UIs. Now the sandbox Fiori launchpad can be opened on http://localhost:4004/.

Debugging the Project

We have prepared two ways of debugging the Node.js part of the app easily:

Debugging with VSCode

The launch configuration "debug server in vscode" is part of the project and can be used to run the CAP server in debug mode and debug directly in VSCode (e.g. set breakpoints).

Note: the UI parts are not started by this launch configuration. To debug the interaction of server and UI, the form UI or admin UI has to be started separately with npm run start:ui-form or npm run start:ui-admin.

Limitations

The local database uses in-memory mode. Data will be re-initialized after each restart.

The sample does not cover deployment of the app, where additional considerations e.g. regarding database and authentication are needed.

How to obtain support

The sample code is provided as-is. No support is provided.

References

Other projects demonstrating similar use-cases:

License

Copyright (c) 2020-2026 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

Apache-2.0, read

Details

Sources3
Added by handdiscovered herechecked
github.com/SAP-samples/ui5-cap-event-apptree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
discovered viaAdded by hand
first seen in the atlas
ecosystem and domaincap, ui-and-frontend-bridge
Flavors1
Node.js
“a Node.js-based CAP backend” — SAP-samples/ui5-cap-event-app — READMEchecked
Contributors5

From the repository’s contributor list, .

History in the atlas1
  1. First seen.
For your agent
Ref
artifact:sap-samples-ui5-cap-event-app
JSON
/artifacts/sap-samples-ui5-cap-event-app.json
MCP
Connecting an agent