Generators

Getting 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.

Overview

InCAPassessed
SAP SHIPSby design
Node.js →

@sap/cds-dk The command line client and development toolkit for CAP projects, with the commands cds build, cds deploy, cds watch and cds add among them.

Java →

com.sap.cds:cds-maven-plugin The Maven plugin that runs CDS build steps in a CAP Java project: compiling the model, generating typed Java accessor interfaces and adding facets to an existing project.

com.sap.cds:cds-services-archetype A Maven archetype that generates a new CAP Java project: a Spring Boot service with a starter CDS model, wired to the CDS Maven plugin for its build.

@sap-ux/cap-config-writer SAP's writer module for changing a CAP project's configuration from code, so a tool can add a UI5 app to a project that already exists, returning a mem-fs editor whose commit writes the changes.

Not covered: It stops at facets the core knows. It has no opinion about how a service is laid out inside srv, no template for a handler, and nothing to say about the choices a team makes once past the skeleton — which is where the generators here pick up, several of them wrapping cds-dk rather than replacing it.

THE COMMUNITY ADDS

SAP adds the same two moments for CAP Java in the CAP Java archetype and the CDS Maven plugin, and a prompt-driven path in Joule in SAP Build Code. Community generators such as @khalidmh/capx run cds init and cds add for you and write the starter files that make the chosen facets work together.

InABAPassessed

On the ABAP door a generator writes repository objects into a system: ADT's wizard turns a table into a RAP business service, and AbapGenerator copies a template package under a new project name and fits the model class to the report's selection screen.

SAP SHIPS

ADT's Generate ABAP Repository Objects wizard starts from a database table and writes a draft-enabled RAP business object on it, with its projection, service definition and service binding. SAP names it from SAP S/4HANA 2022 and in the ABAP environments of SAP S/4HANA Cloud and SAP BTP ABAP Environment.

Not covered: At one table and one shape, a RAP service. A team's own starting set, such as a report with its model and view classes copied from a template package, is not something the wizard copies.

THE COMMUNITY ADDS

AbapGenerator copies a template package under a new project name, and the abap2ui5 layout editor generates and regenerates an abap2ui5 view class from a visual layout.

InUI5assessed

On the UI5 door most generators are Yeoman plug-ins run through Easy-UI5, one per project shape, generator-ui5-flp-plugin among them. @sap/generator-fiori is SAP's generator for Fiori apps, and create-wdi5 adds end-to-end tests to a UI5 app that already exists.

SAP SHIPS
Fiori elements →

@sap-ux/fe-fpm-writer A library that writes flexible programming model elements, such as a custom page wired into the app's routing, into a Fiori elements application for OData v4 from Node code.

Not covered: At apps. Every template on SAP's list is an app floorplan; a UI5 library, a custom control, a UI5 tooling extension, and wdi5 added to a project that already exists are not among them.

Easy-UI5 and its plug-in generators sit in the UI5 Community organisation. Easy-UI5 moved there from SAP's GitHub organisation with version 3, and its README says SAP employees still handle its feature requests and bug reports.

THE COMMUNITY ADDS

SAP's Fiori tools libraries are also published as packages, among them @sap-ux/ui5-application-writer for the first moment and @sap-ux/fe-fpm-writer and @sap-ux/create for adding to an app that runs. Beyond apps, community generators write libraries, custom controls such as ui5-control-generator, and nested frameworks such as generator-ui5-react-nest.

Artifacts32

Group by32 of 32 artifacts
ArtifactSignals
Build tools1
com.sap.cds:cds-maven-pluginMaven plugin running CDS build steps in a CAP Java project
Signals
none
CLI tools2
@sap-ux/createCommand line for changing features of an existing Fiori project
Signals
none
@sap/cds-dkCommand line client and development toolkit for CAP
Signals
none
Generators21
@cap-handler/generatorInteractive generator for CAP event handler files
Signals
none
@khalidmh/capxInteractive project installer for CAP Node.js
Signals
none
@sap/generator-cap-projectCAP project generator behind SAP Business Application Studio's wizard
Signals
none
@sap/generator-cdsCDS project generator, deprecated in favour of @sap/cds-dk
Signals
none
AbapGeneratorABAP transaction generating an MVC-style project from a template
Signals
Quiet
com.sap.cds:cds-services-archetypeMaven archetype generating a new CAP Java project
Signals
none
create-easy-ui5npm-init wrapper for the Easy-UI5 Yeoman generator
Signals
none
create-wdi5npm initializer adding wdi5 testing to an existing UI5 app
Signals
none
generator-easy-ui5Yeoman meta-generator for scaffolding UI5 projects
Signals
none
generator-ui5-addYeoman generator for UI5 tooling-extension projects
Signals
Quiet
generator-ui5-appEasy-UI5 generator scaffolding a new UI5 application
Signals
none
generator-ui5-controlYeoman generator for UI5 custom controls distributed via npm
Signals
Quiet
generator-ui5-libraryEasy-UI5 generator scaffolding a new UI5 library
Signals
none
generator-ui5-library-webcYeoman generator for UI5 libraries wrapping UI5 Web Components
Signals
Quiet
generator-ui5-projectYeoman generator for UI5 projects holding several applications
Signals
Functional boundary
generator-ui5-react-nestYeoman generator for a UI5 app that loads a React app
Signals
Quiet+1
generator-ui5-ts-appEasy-UI5 generator scaffolding a TypeScript UI5 application
Signals
none
generator-ui5-ts-app-fclGenerator for a TypeScript UI5 FlexibleColumnLayout app on OData
Signals
none
generator-ui5-ts-libraryEasy-UI5 generator scaffolding a TypeScript UI5 library
Signals
none
generator-ui5-wdi5Yeoman generator scaffolding wdi5 test configuration into a UI5 app
Signals
Quiet
ui5-control-generatorCommand line generator of UI5 custom controls from html
Signals
Quiet
Packages5
@sap-ux/cap-config-writerWriter module for changing a CAP project's configuration from code
Signals
Functional boundary
@sap-ux/fe-fpm-writerWriter of flexible programming model elements into Fiori elements apps
Signals
none
@sap-ux/fiori-generator-sharedShared functions and types of the Fiori generators
Signals
none
@sap-ux/odata-service-writerWriter that adds an OData service to an existing UI5 project
Signals
none
@sap-ux/ui5-application-writerWriter of the base structure of a UI5 project from Node code
Signals
none
Services2
Joule in SAP Build CodeJoule's generative AI inside SAP Build Code
Signals
none
SAP Build CodeDevelopment environment on BTP for UI5, Fiori, mobile and CAP
Signals
none
Web tools1
abap2UI5 Layout EditorDrag-and-drop UI5 view editor that writes an abap2UI5 app class
Signals
Functional boundary

Content18

Group by18 of 18 pieces
Piece, what it offers
CAP Now Supports ReactJS - With working demo + UI5 Web components
SAP Community, chrisobar, Blog
CAP Initializr: Generate SAP CAP Projects in Seconds
SAP Community, Saptarshi017, BlogThe reasoning
Part 1: How to create CAPM project in BAS
SAP Community, Vennilla00, BlogThe reasoningA recipe
Core changed
Show 15 more
Receive Events from Event Mesh of Integration Suite to CAP Node.js Applications
SAP Community, KevinWang_ST_Consultancy, Blog
UI5 MCP Server Got Extended for UI Integration Cards Generation
SAP Community, daniel_vladinov, Blog
Prompt-Driven Development: Building Full-Stack SAP CAP Apps from User Stories
SAP Community, AnuradhaDhingan, BlogThe reasoning
Give Your AI Agent Some Tools: Introducing the UI5 MCP Server
SAP Community, Merlin Beutlberger, Blog
Joule Studioがリリースされたので早速CAPアプリを自然言語で操作するカスタムスキルを構築してみた
SAP Community, takayuki_tanaka, Blog
SAP Fiori Application Generator Available in Open Source
SAP Community, jlong, Blog
CAPM Basics - Part 4
SAP Community, archisman92, Blog
Deploying a CAP app with Fiori app standalone (HTML5 Repo Host)
SAP Community, Christopher_Ketzler, Blog
CAPM Basics - Part 2
SAP Community, archisman92, Blog
My CAP Projects Toolbox
SAP Community, vvdries, Blog
加速开发和部署的CAP CDS和Fiori一些实用命令
SAP Community, TiaXu, BlogThe reasoningA recipeRunnable code
Core changed
Useful CAP CDS and Fiori Commands to Accelerate Development and Deployment
SAP Community, TiaXu, Blog
SAP Cloud Application Programming Model(CAP):概要およびデモ - Part 1
SAP Community, rasai, part 1 of 2, Blog
First Java Cap Application
SAP Community, bruce_wang3, Blog
cf-create-app: Create End-to-End apps and deploy to Cloud Foundry in minutes
SAP Community, former_member604013, BlogThe reasoningA recipeRunnable code
Core changed

Seen working3

ArtifactSignals
Samples3
app-templateStarter repository for an abap2UI5 app with CI and agent setup
none
repository-templateRepository template with LICENSE, REUSE and compliance files
none
teched2025-AD162TechEd 2025 workshop on a Fiori app with ABAP Cloud and Joule
none

Details

What changed — and what it makes stale2
@sap/cds-dk 10.0.3, CAP

Before this, cds init --nodejs and cds add --nodejs scaffolded CommonJS projects by default. The default flipped to ESM; a CommonJS project now needs the explicit cds init --add cjs. capire's changelog tags this at cds-dk@10.0.1, but 10.0.0 and 10.0.1 were never published to npm — 10.0.3 is the first version on that line that resolves.

Makes stale:

Any generated-project walkthrough that shows require() and module.exports coming out of a bare cds init — on cds-dk 10.0.3 and later, a fresh Node.js project is ESM unless --add cjs was passed.

SourceCAP changelog 2026 — cds-dk@10.0.1checked
@sap/cds-dk 9.1.0, CAP

Before this, cds add's facets covered infrastructure — a database, messaging, auth, a deployment descriptor — but nothing about the tests themselves. cds add test arrived, generating test files for CDS services, marked experimental from the start.

Makes stale:

Descriptions of cds add as covering only infrastructure facets and never touching test code. That was accurate before mid-2025; since then it does, though still experimental.

SourceCAP changelog 2025 — cds-dk@9.1.0checked
Coverage
statecore and community, CAP
assessed
state in ABAPcore and community, assessed
state in UI5core and community, assessed
relationshipnarrow by design
also inABAP, UI5
For your agent