GeneratorGeneratortypeCreates a project, a component or configuration once, when you run it, rather than taking part in every build.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

@khalidmh/capx

An opinionated installer for CAP Node.js projects — asks a short set of questions, runs cds init, adds the chosen facets, then writes the configuration and starter files that make those choices work together.

cds init gives you a skeleton and leaves the wiring to you. This wraps it, so the answer to 'which facets, and what do they need configured' arrives as a running project. The README is explicit that it is a wrapper around @sap/cds-dk rather than a replacement for it.

Facts

Latestv0.1.0ReleasedLast pushLicenceMIT

Where it sits

Lives in
Provides
GeneratorsCAPGeneratorscapabilityGetting 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.
Flavors
Node.jsJavafrom its runtime
Requires
@sap/cds-dk@sap/cds-dkartifactNamed as a dependency in its documentation.

Who is behind it

Khalid MarhoumKhalid MarhoumPersonMaintains this
In the atlas: maintains 1, contributes to 1
@KhalidMh
maintainer

What it declares

Every artifact

Type
Generator
Origin
Independently maintained
Runtime
build time

As a generator

Generates
A new project
Run with
Its own command
Distributed through
npm

Connections2

@khalidmh/capx connections@khalidmh/capxPROVIDES→ provides1provides authoredGeneratorsNEEDS→ needs1needs authored@sap/cds-dk

Install

npm add @khalidmh/capx

Derived from the package name. No recipe recorded; the README has the configuration.

README

quoted from KhalidMh/capx under MIT, read
KhalidMh/capx/README.mdOn GitHub

capx

A Laravel-style installer for SAP CAP Node.js projects.

What It Does

capx guides you through a small set of project choices and builds a ready-to-run CAP application around them. It runs cds init, adds the selected CAP facets, then applies the project configuration and starter files that make those choices work together.

It is deliberately an opinionated wrapper around @sap/cds-dk, not a replacement for the CAP tooling. Once the project exists, use the normal cds, npm, MTA, Cloud Foundry, and Docker commands you already use for CAP development and deployment.

Requirements

  • Node.js 22 or later. Node.js 24 LTS is recommended.
  • npm and Git. Git is required because capx initializes the generated project repository.
  • @sap/cds-dk 10+ and mbt. Doctor checks for both and offers to install them globally.
  • The Cloud Foundry CLI and the MTA CF plugin are detected but optional. Doctor shows installation guidance and lets you decide whether to continue without them.
  • Docker with the Compose plugin is checked when you choose PostgreSQL for local development. You can continue without it, but the generated PostgreSQL development configuration requires Docker before it can run.

Doctor runs as the first step of capx new; there is no standalone capx doctor command.

Install

npm install --global @khalidmh/capx

The package is published as @khalidmh/capx; the installed command is capx.

Quickstart

capx new my-app
cd my-app
npm run watch

The generated project is a standard CAP project. Run npm test, npm run lint, and npm run build from its root as needed.

Configuration Choices

capx new asks for the following choices:

ChoiceEffect
Project nameCreates the target directory and names generated artifacts.
Backend languageSelects JavaScript (ESM) or TypeScript.
Development databaseUses a persistent SQLite file or PostgreSQL through Docker.
Production databaseConfigures SAP HANA Cloud or PostgreSQL on BTP in the MTA.
AuthenticationSelects none, XSUAA, or IAS. XSUAA and IAS are mocked in development.
Frontend frameworkAdds no frontend, Vue, or React through Vite at app/frontend.
ApprouterIs selected automatically for authentication; an unauthenticated frontend asks whether to add a proxy-only approuter.

For PostgreSQL on BTP, capx preserves the generated development service plan. PostgreSQL entitlements and available plans vary between BTP subaccounts and regions, so adjust that plan in mta.yaml to one available in your landscape before deployment.

What You Get

The exact layout depends on your choices. A fully featured project contains these areas:

my-app/
├── app/
│   ├── frontend/       # Optional Vite React or Vue application
│   └── router/         # Optional approuter
├── db/
│   └── schema.cds      # Sample domain model
├── srv/
│   └── cat-service.*   # Sample CAP service
├── test/
│   └── smoke.test.*    # Service smoke test
├── .cdsrc.json         # CAP configuration
├── docker-compose.yml  # Present for PostgreSQL development
├── mta.yaml            # Cloud Foundry deployment descriptor
└── package.json

CAP facets may add their own files, including authentication descriptors and deployment modules. The generated project also has scripts for watch, build, lint, test, and, when PostgreSQL development is selected, starting and stopping its database container.

Upgrading A Generated Project

Use the CAP tooling to upgrade the generated application. With current @sap/cds-dk, run cds upgrade from the generated project directory to inspect dependencies and migration guidance, then review and test the proposed changes. capx does not maintain a parallel upgrade path.

Non-Goals

Version 0.1.0 does not provide Java backends, Fiori Elements scaffolding, CommonJS projects, non-interactive flags, capx add, standalone doctor, self-updates, generated project CI, multitenancy, Kyma or Helm deployment, Event Mesh, AI, attachments, audit logging, npm workspaces, or pnpm, Yarn, and Bun workflows.

Roadmap

Future work will be considered from user feedback and CAP platform changes; the non-goals above describe the current v0.1.0 boundary, not release commitments.

Contributing

Run the local checks before opening a change:

npm ci
npm run lint
npm test
npm run format:check

License

MIT

MIT, read

History

Latest

v0.1.0

Features 5

Notes
Added
  • Interactive capx new scaffolding for SAP CAP Node.js projects.
  • JavaScript and TypeScript backend choices, with SQLite or Docker-backed PostgreSQL for development.
  • SAP HANA Cloud or PostgreSQL on BTP deployment choices, MTA configuration, and optional XSUAA, IAS, Vite frontend, and approuter setup.
  • Prerequisite checks, install guidance, rollback handling, dependency installation, and initial Git repository creation for generated projects.
  • Generated service, database, test, formatting, and Docker configuration where selected.
0downloads per week, npm
Weekly downloads for @khalidmh/capx26 complete calendar weeks from 2026-04-27 to 2026-10-25; the latest total is 0.27 Apr – 3 May: 04 May – 10 May: 011 May – 17 May: 018 May – 24 May: 025 May – 31 May: 01 Jun – 7 Jun: 08 Jun – 14 Jun: 015 Jun – 21 Jun: 022 Jun – 28 Jun: 029 Jun – 5 Jul: 06 Jul – 12 Jul: 013 Jul – 19 Jul: 020 Jul – 26 Jul: 027 Jul – 2 Aug: 03 Aug – 9 Aug: 010 Aug – 16 Aug: 017 Aug – 23 Aug: 024 Aug – 30 Aug: 031 Aug – 6 Sept: 247 Sept – 13 Sept: 614 Sept – 20 Sept: 821 Sept – 27 Sept: 528 Sept – 4 Oct: 35 Oct – 11 Oct: 112 Oct – 18 Oct: 019 Oct – 25 Oct: 0
Generators
  1. SAP Build CodeDevelopment environment on BTP for UI5, Fiori, mobile and CAP
  2. @cap-handler/generatorInteractive generator for CAP event handler files
  3. com.sap.cds:cds-maven-pluginMaven plugin running CDS build steps in a CAP Java project
  4. com.sap.cds:cds-services-archetypeMaven archetype generating a new CAP Java project
  5. Joule in SAP Build CodeJoule's generative AI inside SAP Build Code
  6. @sap/cds-dkCommand line client and development toolkit for CAP
  7. @sap/generator-cap-projectCAP project generator behind SAP Business Application Studio's wizard
  8. @sap/generator-cdsCDS project generator, deprecated in favour of @sap/cds-dk
  9. @sap-ux/cap-config-writerWriter module for changing a CAP project's configuration from code
  10. @sap-ux/createCommand line for changing features of an existing Fiori project
  11. @sap-ux/fe-fpm-writerWriter of flexible programming model elements into Fiori elements apps
  12. @sap-ux/fiori-generator-sharedShared functions and types of the Fiori generators
  13. @sap-ux/odata-service-writerWriter that adds an OData service to an existing UI5 project

Details

Sources4
npm registrydiscovered here, keywords:sap-capchecked
npm registry, @khalidmh/capxversion, releases, installschecked
github.com/git+https://github.com/KhalidMh/capx.gittree, 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
runtimesbuild-time
latestv0.1.0
first release
releases and cadence1
discovered vianpm registry · keywords:sap-cap
first seen in the atlas
ecosystem and domaincap, developer-experience
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:khalidmh-capx
JSON
/artifacts/khalidmh-capx.json
MCP
Connecting an agent