Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Open RAP RuntimeNew to Visual Studio Code? Get it now.
Open RAP Runtime

Open RAP Runtime

Abaper

| (0) | Free
Check, generate and run a RAP business object without an SAP system: Open RAP Runtime, OpenUI5 and PGlite are bundled, nothing else to install.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Open RAP Runtime for VS Code

Check, generate and run a RAP business object with Open RAP Runtime, without an SAP system. The extension compiles nothing itself: it calls the rapt CLI (--json) and shows its results. Source code, issues and releases: GitHub.

Features

  • Syntax highlighting of ABAP (.abap, grammar of larshp/vscode-abap, MIT), of the CDS sources (.asddls, .asddlxs, .asdcls, .srvdsrv, tables .astabl, types .acds) and of the behavior definitions (.asbdef).
  • Problems: the diagnostics of rapt check (BDEF, CDS, behavior pool…) on each save, underlined in the code.
  • RAP Objects view: the objects of the project grouped as in the project explorer of ADT (dictionary, data definitions, behavior definitions, services…); each service binding shows its kind, UI or Web API.
  • RAP: New RAP object…: create object by object (table, view, projection, BDEF, behavior pool, service, binding…) with the wizard: the object types of rapt generate by category, as in the New ABAP Repository Object wizard of ADT, with the objects of the project to derive from. A service binding asks its type, UI (a Fiori application) or Web API (for other systems), and proposes the matching name (…_UI_…_O4, …_API_…_O4).
  • RAP: Choose the floorplan of the application: List Report, Worklist, Analytical List Page or Form Entry, with what each one is for.
  • RAP: Start rapt dev: the application runs with a PGlite database and is rebuilt on each save. The status bar shows the state (building, ready, errors) and opens the application in one click.
  • RAP: Start the launchpad (rapt dev, all the applications): rapt launchpad dev, every application of launchpad.json in development on the port of its URL (8081, 8082…), behind the launchpad on http://localhost:8090/; each save rebuilds its application. Also in the context menu and the title bar of launchpad.json. One session at a time: starting the launchpad stops rapt dev of an application, and the other way round.
  • RAP: Build the application…: either the launchpad of the workspace with every application of the workspace (rapt launchpad: each project with a service definition joins the same launchpad) or the application alone (rapt build, standalone), into the folder of your choice. The floorplan of each root entity (List Report, Worklist, Analytical List Page, Form Entry) is asked first when it was not chosen yet, application by application, with the name of the application in the prompt; RAP: Start rapt dev asks for it too. The missing abapGit files of each application (.abapgit.xml, the XML of the objects) are written before the build, the existing ones are kept.
  • One launchpad per workspace: launchpad.json (titled "Launchpad"), next to the .code-workspace or in the first folder of the workspace, is created with the first application; each complete BO and each choice of floorplan add the application and its tile, without touching what is already there. RAP: Build the launchpad (all the applications)… builds it with its applications (active when it exists).
  • RAP: New complete business object…: rapt new asks what the service is for — a Fiori application (UI, added to the launchpad) or a Web API for other systems (no UI, never in the launchpad) —, then for the name of the entity, the prefix and the description, writes a complete managed BO (table as a .tabl.astabl source, CDS, BDEF, behavior pool, service, initial data rapt/seed.json) with its abapGit files, then offers to start rapt dev. Possible in an empty folder.
  • RAP: Generate the abapGit files: rapt abapgit writes the missing XML files (including those of the tables written as source) to import the repository into an SAP system with abapGit.
  • Every other command of the CLI: project mode (standard / enhanced), MCP server, intermediate representation, launchpad.
  • rapt in the terminal: the integrated terminals have the rapt command of the extension (rapt check ., rapt dev .…), for you and for the AI agents that run commands.
  • AI agents: the agent mode of VS Code finds the MCP server of rapt (rapt agent): check the project, create objects, set the floorplan, search the documentation of Open RAP Runtime. For Claude Code in the terminal: claude mcp add rapt -- rapt agent ..
  • RAP: Report a bug or request a feature…: the feedback form of the website, with the version of the extension and the environment filled in; it opens a pre-filled issue in the issues of the repository.
  • Context menus of the explorer (project folder, .abapgit.xml) in three groups (create, project, application), buttons in the title bar of the RAP sources. The commands that are not possible yet are greyed out: outside a project, only New complete business object… is active; Floorplan, rapt dev and Build the application wait for a service definition; the launchpad commands wait for an application or a launchpad.json; Open the application waits until the session serves, Stop rapt dev until one runs.

A project is an abapGit folder: the folder that contains .abapgit.xml (otherwise, the parent of a src folder).

Installation

Nothing else to install: the .vsix contains rapt (compiler and runtime), OpenUI5 and PGlite, and rapt runs on the Node.js of VS Code (1.101 or later, Node.js 22).

code --install-extension open-rap-runtime-vscode.vsix

The .vsix is downloaded from the project website, attached to each GitHub release (tag v*) and produced by the CI on each commit (artifact open-rap-runtime-vscode).

To use another version of rapt (a clone under development, for example): setting rapt.cliPath. Without a bundled version (extension built without pnpm run stage), the extension takes an Open RAP Runtime clone or the node_modules of a folder of the workspace, then the rapt command of the PATH.

Settings

Setting Default Purpose
rapt.cliPath empty cli.js of rapt or folder of a clone (empty: bundled rapt)
rapt.nodePath empty Node.js 22+ that runs rapt (empty: the one of VS Code)
rapt.checkOnSave true check on each save
rapt.dev.port 8080 port of the application
rapt.dev.openUi true open the browser when rapt dev starts
rapt.new.prefix Z prefix proposed for a new business object
rapt.terminal.addToPath true rapt on the PATH of the integrated terminals
rapt.agent.enabled true MCP server of rapt for the agent mode of VS Code
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft