UI5 Tools
A VS Code extension for UI5 developers that serves, proxies, builds and deploys UI5 projects from one workspace-wide configuration, with live reload, a Gateway deployer and a BSP importer.
A UI5 project in VS Code needs a local server, a proxy for its OData service and its UI5 resources, a build and a deployment. This extension configures them once for the whole workspace, which its README gives as its main objective. Its server handles AppCachebuster on localhost and live-reloads the browser, with hot reload for CSS and images. The proxy is configurable for OData services (Gateway, Other, None) and for resources (Gateway, CDN SAPUI5, CDN OpenUI5, Local Runtime, None). The builder creates Component-preload.js and builds LESS files, a deployer sends a project to a Gateway system and a BSP importer pulls one from it, and a string replacer substitutes custom keys in the workspace. It states that it is not intended to replace the UI5 CLI.
Facts
Where it sits
Who is behind it
In the atlas: maintains 1, contributes to 2@CarlosOrozco88maintainerAdrian DuszyńskiContributes to this
In the atlas: contributes to 1@duszaspcSergio GraciaContributes to this
In the atlas: contributes to 1@sergio-gracia2 contributors
What it declares
Every artifact
- Type
- IDE extension
- Origin
- Independently maintained
As an IDE extension
- Installs into
- VS Code
- Distributed through
- Visual Studio Marketplace
Connections
Serving an app locally and building it for deployment
Download
README
quoted from CarlosOrozco88/ui5-tools under Apache-2.0, read
ui5-tools Extension
VSCode extension for ui5 developers. This extension is not intended to replace ui5 cli, its main objective is to provide a fast and global workspace configuration to work with multi root workspaces and projects deployed to on premise systems (Gateway).
Examples
You can find examples of vscode workspace configuration in this repository.
Features
ui5-tools
- Automatic less builder. Looks for
styles.lessandPROJECTFOLDER.less - Automatic themes builder. Build
library.source.lessthemes - Configurator commands for odata proxy, resources proxy and replace strings
Server
- Handles AppCachebuster in localhost (by default only in PROD mode). Only use this feature to test your cachebuster behaviour with no deployment needed.
- Configurable proxy to one o multiple odata service (Gateway, Other, None). Command
alt+c alt+o - Supports
.envfile for odata service authentication. Example of.envfile:
UI5TOOLS_ODATA_USER=
UI5TOOLS_ODATA_PASSWORD=
UI5TOOLS_ODATA_USER_2=
UI5TOOLS_ODATA_PASSWORD_2=
UI5TOOLS_ODATA_USER_N=
UI5TOOLS_ODATA_PASSWORD_N=
- Configurable proxy to resources (Gateway, CDN SAPUI5, CDN OpenUI5, Local Runtime, None). Command
alt+c alt+u - Configurable UI5 version (when using gateway proxy, extension will detect sapui5 version automatically)
- Live reload browser, css and images hot reload
- Typescript support (ESM)
- Built in localhost home page server, with apps launchpad, readme.md, docs (md files), links, server info...
- Built in launchpad for resources: Gateway, CDN SAPUI5 and Runtime. Configurable with file
fioriSandboxConfig.json - Server uses folder hierarchy. For product apps and Z apps, is possible to emulate gateway bsp paths
- Start server in development mode
alt+s alt+sor production modealt+s alt+p(launchesappFolder/libraryFolderordistFolderfolder of each project) - Multiple comands: start
alt+s alt+s, restartalt+s alt+r... (check commands secction)
Builder
- Component-preload.js, checking configured ui5 version for correct build. Build your project by doing right click in project folder or
alt+b alt+band select project - Dbg files creation
- Typescript support (ESM)
- Build less files (looks for
styles.css,PROJECTFOLDERNAME.lessor library.source.less) - Uglify files
- Replace strings
- Build one project
alt+b alt+bor all appsalt+b alt+ain one command - Building preload (Component-preload and library-preload) process uses openui5-preload
- Building theme (library.source.less) process uses less-openui5
- Building styles (styles.less and PROJECTFOLDER.less) process uses less
Deployer
- Gateway deploy, process includes build process. Deploy your project doing right click in project folder or
alt+d alt+dand select project - ui5-tools.json file located at project folder, with deployment configuration: ui5-tools.json example
- Create, update and save last order in ui5-tools.json file (configurable)
- Autoprefix BSP name in order text while creation (optional)
- Supports
.envfile for gateway authentication.
UI5TOOLS_DEPLOY_USER=
UI5TOOLS_DEPLOY_PASSWORD=
- Deploy process uses ui5-nwabap-deployer-core , so the extension uses the same configuration in file ui5-tools.json (property deployer.options)
Importer
- Import BSP directly from Gateway systems
alt+i alt+i - Supports
.envfile for gateway authentication.
UI5TOOLS_IMPORT_USER=
UI5TOOLS_IMPORT_PASSWORD=
String replacer
- Default replace patterns
<% TIMESTAMP %>,<% ISODATE %>,<% DMY %>,<% YMD %>,<% MYD %> - Create custom replacements like
<% CUSTOMKEY %>in workspace environment (configurable with commandalt+c alt+r) - Computed values
COMPUTED_DATE_TIMESTAMP,COMPUTED_DATE_ISO,COMPUTED_DATE_DMY,COMPUTED_DATE_YMD,COMPUTED_DATE_MYDand the special valueCOMPUTED_DATE_FORMATTED - Suports custom computed date format, replacements using dayjs during the build process:
"ui5-tools.builder.replaceKeysValues": [
{
"key": "DATE_FORMATED_EXAMPLE",
"value": "COMPUTED_DATE_FORMAT",
"param": "DD/MM/YYYY HH:mm:SS"
}
]
Settings
General Settings
ui5-tools.appFolder: Transpiled folder for applications (js) | default:webappui5-tools.libraryFolder: Transpiled folder for libraries (js) | default:srcui5-tools.distFolder: Destination folder in your project (final build) | default:distui5-tools.ui5Version: UI5 library version for CDN proxy in server and build correct preload files:1.71.63ui5-tools.verbose: Log al messagesfalse
Server Settings
ui5-tools.server.name: Server name | default:UI5 Serverui5-tools.server.port: Set custom port of UI5 Server | default:3000ui5-tools.server.startOnLaunch: Start server at launch vscode | default:falseui5-tools.server.openBrowser: Open browser al launch server | default:trueui5-tools.server.watch: Activate live reload | default:trueui5-tools.server.timeout: Server timeout (ms), 0 for disable timeout | default:60000ui5-tools.server.watchExtensions: Extensions to listen for live reload | default:css,js,json,xml,html,propertiesui5-tools.server.protocol: Should use http or https. HTTPS requirescert/server.pemandcert/server.key| default:httpui5-tools.server.odataProxy: Proxy all odata calls to a server | default:Noneui5-tools.server.odataUri: Your odata server uri url (example:http://srvaspgwd.com:8080/). odataProxyOtheraccepts multiple uris (example:http://srvaspgwd.com:8080/, http://srvaspgwd.com:8080/)ui5-tools.server.odataSecure: Verify odataProxy SSL Certs | default:falseui5-tools.server.odataMountPath: The mountpath for 'Other' odataProxy. Accepts multiple paths, respecting the same order that odataUri for odataProxy typeOther| default:/odataui5-tools.server.resourcesProxy: Proxy all odata calls to a Gateway, CDN or Local Runtime (proxy all url begining with /resources) | default:CDN SAPUI5ui5-tools.server.resourcesUri: Your resources server url (example: http://srvaspgwd.com:8080/)ui5-tools.server.proxyDestinations: Your own list of destinations | default:[]ui5-tools.server.resourcesSecure: Verify resourcesProxy SSL Certs | default:falseui5-tools.server.cacheBuster: Activate cacheBuster in server mode: | Default:None
Builder Settings
ui5-tools.builder.debugSources: Create debug js files when building | default:trueui5-tools.builder.uglifyPreload: Uglify Component-preload.js when building. If uglifySources is activated, this flag is redundant | default:falseui5-tools.builder.uglifySources: Uglify Component-preload.js and all js files when building | default:trueui5-tools.builder.uglifySourcesExclude: Exclude uri for uglify, generate a RelativePattern to exclude, can be n separated by comma | default: ``ui5-tools.builder.preloadSrc: Array with all patterns to include/exclude in Component-preload.js | default:"**/*.js", "**/*.fragment.html", "**/*.fragment.json", "**/*.fragment.xml", "**/*.view.html", "**/*.view.json", "**/*.view.xml", "**/*.properties", "!**/*-dbg.js"ui5-tools.builder.buildLess: Auto build less files into css when saving changes | default:trueui5-tools.builder.replaceStrings: Replace strings when building | default:trueui5-tools.builder.replaceExtensions: File extensions to look for keys to replace | default:xml,js,json,propertiesui5-tools.builder.replaceKeysValues: Key/Value pair list. Replace <% key %> with 'value' while building the project | default:[ { "key": "TIMESTAMP", "value": "COMPUTED_DATE_TIMESTAMP" }, { "key": "ISODATE", "value": "COMPUTED_DATE_ISO" }, { "key": "DMY", "value": "COMPUTED_DATE_DMY" }, { "key": "YMD", "value": "COMPUTED_DATE_YMD" }, { "key": "MYD", "value": "COMPUTED_DATE_MYD" } ]
Deployer Settings
ui5-tools.deployer.autoSaveOrder: Saves de transport number in ui5-tools.json file | default:trueui5-tools.deployer.autoPrefixBSP: Auto prefix BSP name in all transport texts while creation | default:falseui5-tools.deployer.rejectUnauthorized: Reject deployments in servers with misconfigured certificates
Importer Settings
ui5-tools.importer.uri: Source gateway system to import BSPs | default: ``
Commands
General Commands
ui5-tools.general.refreshProjects: Search for UI5 projects | Shortcut:alt+g alt+rui5-tools.general.showOutput: Open the extension output | Shortcut:alt+g alt+o
Server Commands
ui5-tools.server.startDevelopment: Start server in development mode (appFolder/libraryFolder) | Shortcut:alt+s alt+sui5-tools.server.startProduction: Start server in production mode (distFolder) | Shortcut:alt+s alt+pui5-tools.server.startBuildProduction: Build workspace and start server in production mode | Shortcut:alt+s alt+bui5-tools.server.stop: Stop server | Shortcut:alt+s alt+xui5-tools.server.restart: Restart server | Shortcut:alt+s alt+rui5-tools.server.toggle: Toggle server | Shortcut:alt+s alt+t
Builder Commands
ui5-tools.builder.build: Build ui5 project | Shortcut:alt+b alt+bui5-tools.builder.buildAll: Build workspace | Shortcut:alt+b alt+a
Deployer Commands
ui5-tools.deployer.deploy: Build and deploy project | Shortcut:alt+d alt+dui5-tools.deployer.deployOnly: Deploy project | Shortcut:alt+d alt+oui5-tools.deployer.deployMultiple: Build and deploy multiple projects | Shortcut:alt+m alt+m
Importer Commands
ui5-tools.importer.import: Import BSP from Gateway system | Shortcut:alt+i alt+i
Configurator Commands
ui5-tools.configurator.odataProvider: Configure odata provider | Shortcut:alt+c alt+oui5-tools.configurator.ui5Provider: Configure ui5 provider | Shortcut:alt+c alt+uui5-tools.configurator.replaceStrings: Configure replace strings | Shortcut:alt+c alt+rui5-tools.configurator.uninstallRuntime: Uninstall SAPUI5 Runtime | Shortcut:alt+c alt+d
Menus
ui5-tools.menu.builder.build: Build option in project folder menu (right click)ui5-tools.menu.deployer.deploy: Build and deploy option in project folder menu (right click)ui5-tools.menu.deployer.deployOnly: Deploy option in project folder menu (right click)
Contributors
|
Carlos Orozco Jiménez |
David Perez Bris |
Sergio Gracia Diaz |
Santiago de Arriba Cortijo |
Joaquim Monserrat Companys |
Credits
- Preload javascript builder: openui5-preload - Ryan Murphy
- Deployer: ui5-nwabap-deployer-core - Florian Pfeffer
- Less library builder: less-openui5 - SAP
History
Other 2
Notes
- fix: keep -dbg.controller.js files unminified and out of the preload. Thanks to duszaspc
- Dependencies upgrade
Other 4
Notes
- Use of custom cert in https mode
cert/server.pemandcert/server.key. No default certs are provided now - Fixed dbg file names in controllers
- Updated sandbox.js files
- Dependencies upgrade
- Use of custom cert in https mode
Other 3
Notes
- Added odata4 path to gateway proxy. Thanks sergio-gracia!
- Updated sandbox.js files
- Dependencies upgrade
Other 4
Notes
- Fix importing bps
- Fix error handling in Deployer: listing gateway transports
- Updated sandbox.js files
- Dependencies upgrade
Other 3
Notes
- Changed
node-fetchwith native fetch - Updated sandbox.js files
- Dependencies upgrade
- Changed
Other 4
Notes
- Changed cachebuster behaviour: formatted token/timestamp like GW Systems
- Upgraded
http-proxy-middleware - Updated sandbox.js files
- Dependencies upgrade
Other 3
Notes
- New feature: when deploying an application to the Gateway, in the
update existing transportoption, the system will attempt to read the transport orders and list them below. If there are no orders or the service is not activated, it will ask for the transport number as it does currently. - Updated sandbox.js files
- Dependencies upgrade
- New feature: when deploying an application to the Gateway, in the
Other 3
Notes
- Fixed a bug with download SAPUI5 runtime.
- Updated sandbox.js files
- Dependencies upgrade
Other 5
Notes
- Added new configuration property
ui5-tools.server.hostwich defaults tolocalhost. - Added
/sap/bc/path to Gateway proxy - Updated default
ui5-tools.ui5Versionfrom 1.71.62 to 1.71.64 - Updated sandbox.js files
- Dependencies upgrade
- Added new configuration property
Other 5
Notes
- Projects of type
sap.app.type="component"andsap.flp.type:"plugin"now loads like a plugin in local launchpad automatically. - Username configured in
.envfile is forced in launchpad (actually is DEFAULT_USER). - Updated default
ui5-tools.ui5Versionfrom 1.71.69 to 1.71.62 - Updated sandbox.js files
- Dependencies upgrade
- Projects of type
Other 4
Notes
- Sorted projects in homescreen
- Updated default
ui5-tools.ui5Versionfrom 1.71.59 to 1.71.60 - Updated sandbox.js files
- Dependencies upgrade
Other 4
Notes
- Builder: added new step in order to clean components preloads when
cleanFolderisfalse - Updated default
ui5-tools.ui5Versionfrom 1.71.46 to 1.71.59 - Updated sandbox.js files
- Dependencies upgrade
- Builder: added new step in order to clean components preloads when
Other 3
Notes
- Added
/sap/bc/lrep/flex/path to Gateway proxy - Updated sandbox.js files
- Dependencies upgrade
- Added
Other 4
Notes
- Cleaned dependencies
- Fixed Cachebuster simulation
ui5-tools.server.cacheBuster - Improved sandbox file selection
- Fixed build and deploy commands
Other 8
Notes
- Updated default
ui5-tools.ui5Versionfrom 1.71.46 to 1.71.56 - Typescript support: changed from old behaviour with dual combination of folders (
src --> webappandsrc --> src-gen) to new behaviour with simpler folders (webappandsrc). - It is possible to migrate to typescript file by file, there is no need to change all javascript files at once. At local server mode, javascript files has priority over typescript files when the has the same filename.
- ❌ Breaking changes related to typescript support:
- Removed command
ui5-tools.builder.generate - Removed configuration properties
ui5-tools.appSrcFolderandui5-tools.librarySrcFolder - Restored default value for property
ui5-tools.libraryFoldertosrc
- Removed command
- Due to Internet Explorer end of life, babel support has been dropped. For me, it only has sense in older computers with older sap gui versions and HTML Viewer inside. Consider upgrading and using new HTML Viewer (Edge), the only problem now is with sapevent + https, but it is going to be solved soon.
- ❌ Babel is now unsuported (a.k.a. internet explorer 10 support)! Breaking changes:
- Removed configuration properties
ui5-tools.server.babelSourcesLiveandui5-tools.builder.babelSourcesExclude
- Removed configuration properties
- Updated sandbox.js files
- Dependencies upgrade
- Updated default
Other 4
Notes
- Exclude files from chokidar watcher with
search.excludeandfiles.excludevscode config. - Updated default
ui5-tools.ui5Versionfrom 1.71.55 to 1.71.56 - Updated sandbox.js files
- Dependencies upgrade
- Exclude files from chokidar watcher with
Other 3
Notes
- Updated default
ui5-tools.ui5Versionfrom 1.71.46 to 1.71.55 - Updated sandbox.js files
- Dependencies upgrade
- Updated default
Other 5
Notes
- Changed Other Proxy behaviour, now respects the entire path configured without doing replacements
- Added new commands
ui5-tools.deployer.deployOnly(alt+d alt+o),ui5-tools.menu.deployer.deployOnly - Added new configuration property
ui5-tools.verbose - Updated sandbox.js files
- Dependencies upgrade
Other 3
Notes
- Fixed gateway proxy. Changed from
/sap/opu/odata/sapto/sap/opu/odata/. Thanks to sergioogra!! - Updated sandbox.js files
- Dependencies upgrade
- Fixed gateway proxy. Changed from
Other 5
Notes
- Fixed
babelSourcesLivewith typescript (no sourcemaps support) - Fixed
Runtimewhen the url has 2+ resources paths (ex. viz charts templates) - Fixed deployment errors
- Extension published to Open VSX
- Dependencies upgrade
- Fixed
Other 2
Notes
- Fixed Progress Notifications for
ui5-tools.menu.importer.import - Dependencies upgrade
- Fixed Progress Notifications for
Other 3
Notes
- Fixed MS Windows watcher fsPaths
- Fixed replace strings in ts files
- Dependencies upgrade
Other 2
Notes
- Some ui5 projects discovery performance improvements
- Fixed deploy with
Project Folder
Other 2
Notes
- Command
ui5-tools.deployer.deployAllreplaced byui5-tools.deployer.deployMultiple - Now generate at server launch only generates projects that have different
appFolder/libraryFolderandappSrcFolder/librarySrcFolder
- Command
Other 6
Notes
- Added more sandbox.js files for newer sapui5 versions | Launchpad
- Fixed fioriSandboxConfig issues | Launchpad
- Status bar bugs fixed
- Hot reload bugs fixed
- Changed urls to CDN: more info here
- Dependencies upgrade
Other 13
Notes
- Full Typescript support
- Deprecated configuration property
ui5-tools.srcFolder. Splitted in two configuration properties: - New configuration properties
ui5-tools.appFolderandui5-tools.libraryFolder. The actual folder of normal ui5 apps writed in javascript (same as old configuration propertyui5-tools.srcFolder, but with defaults towebapp/src-gen) - New configuration properties
ui5-tools.appSrcFolderandui5-tools.librarySrcFolder(defaultssrc/src). The new working folder for typescript projects. It will be transpiled intoappFolder/libraryFolderat server launch. - New command
ui5-tools.general.refreshProjects(alt+g alt+r). Search for UI5 projects. - New command
ui5-tools.builder.generate(alt+b alt+g). GenerateappFolder/libraryFolderfrom a project - Show output keybinding changed to
alt+g alt+o - New option in the project menu:
Generate UI5 Project - Removed apicache / server side resources cache
- New repo with workspace examples
- Changed default
ui5-tools.server.resourcesProxyfromRuntimetoOpenUI5 - Updated default
ui5-tools.ui5Versionfrom 1.71.42 to 1.71.46 - Dependencies upgrade
Other 2
Notes
- New! First typescript (ESM) support, both server and builder
- Dependencies upgrade
Other 3
Notes
- Upgraded default
ui5-tools.ui5Versionfrom1.71.44to1.71.48 - New configuration property
ui5-tools.server.proxyDestinations - Dependencies upgrade
- Upgraded default
Other 2
Notes
- New Configurator menu:
Configurator --> Uninstall SAPUI5 Runtime(shortcutalt+c alt+d) - Dependencies upgrade
- New Configurator menu:
Other 4
Notes
- Changed runtime download from
~/.vscode/extensions/carlosorozcojimenez.ui5-tools-support/runtime/to file system path provide by VSCode. Now usingglobalStorageUrifromExtensionContext. - Improved livereload and manifest CRUD detection
- Dependencies upgrade
- Hotfixes
- Changed runtime download from
Other 1
Notes
- Fixed: configuration property
ui5-tools.deployer.rejectUnauthorized/ SSL certs error when deploying
- Fixed: configuration property
Other 2
Notes
- Fixed: autorefresh when
distFolder === srcFolder - Fixed: showing EULA when downloading SAPUI5 Runtime
- Fixed: autorefresh when
Other 1
Notes
- Changed runtime download from
~/.vscode/extensions/carlosorozcojimenez.ui5-tools-${version}/runtime/to~/.vscode/extensions/carlosorozcojimenez.ui5-tools-support/runtime/
- Changed runtime download from
Other 4
Notes
- Updated default value for
ui5-tools.ui5Versionto 1.71.44 - Updated default value for
ui5-tools.server.resourcesProxytoRuntime - File
sandbox.jsis included in the extension bundle. Now it is possible to launch the launchpad in enclosed networks - Dependencies upgrade
- Updated default value for
Other 4
Notes
- New
ui5-tools.server.resourcesProxyoptionRuntime. Download from tools.hana.ondemand.com the Runtime selected. The runtime is downloaded and unzipped in ui5-tools/runtime extension folder. - Wizard for
Configurator -> Ui5Providerupdated withRuntimeoptions - Server start: when using new
Runtimeoption, server startup checks if ui5 version is downloaded and download it automatically. - Dependencies upgrade
- New
Other 2
Notes
- Fixed: detection of projects without webapp/src/Webcontent folders and deployment without build
- Dependencies upgrade
Other 3
Notes
- Fixed:
ui5-tools.server.babelSourcesLivefixed in windows systems - Changed: computed date replaced changed due to speed improvements. Check readme file
- Dependencies upgrade
- Fixed:
Other 2
Notes
- New configuration property
ui5-tools.server.babelSourcesLive. Live transpile js. - AppcacheBuster is changed default value:
None.
- New configuration property
Other 4
Notes
- Extension migrated to typescript
- Removed font generator: check new extension Icon Font Bundler
- Some bugs solved
- Updated default UI5 to version from 1.71.35 to 1.71.42
Other 2
Notes
- AppcacheBuster is now enabled by default in PROD mode only, new configuration property
ui5-tools.server.cacheBuster - Restored no-cache flag for resources proxy
- AppcacheBuster is now enabled by default in PROD mode only, new configuration property
Other 5
Notes
- Dependencies upgrade
- AppCachebuster simulator in localhost server with timestamps for every file served. Timestamp from last modification/creaton of every file.
- It is now possible to debug with F12 without
Disable cacheoption checked inNetworktab if you are using AppCacheBuster. - Other improvements, server index, extension messages, builder code, live server/live builder, live server production...
- Server index changes: Sponsors section, About and Changelog section, modified Info section
Other 2
Notes
- Dependencies upgrade
- Async preload creation thanks to openui5-preload - Ryan Murphy
Other 3
Notes
- Dependencies upgrade
- Readme bug solved
- New option
ui5-tools.deployer.rejectUnauthorized
Other 6
Notes
- Dependencies upgrade
- New deploy commands
ui5-tools.deployer.deployAll - New comands:
ui5-tools.fonts.generateandui5-tools.fonts.generateAll. Compatible with a folder containing svg files and importing font awesome from github - New option:
ui5-tools.builder.babelSourcesExclude - Look for all *.md files in workspace to show in
localhost/ui5tools/#/docsroute - Can build app without Component.js
Other 3
Notes
- New options:
ui5-tools.builder.buildPreloadandui5-tools.deployer.deployFolder - Dependencies upgrade
- Corrected bugs
- New options:
Other 2
Notes
- Output ui5-tools extension log: bug corrected
- Updated default UI5 to version from 1.71.20 to 1.71.35
Other 3
Notes
- Readme updated
- Credits section updated
- .env file changes does not require restart vscode or extension now
Other 4
Notes
- New deployer! Gateway deployments
- Right click in project folder in order to build or deploy ui5 project
- Strings replaced updated with new format options (Date)
- readme: updated credits section
Other 3
Notes
- New builder options:
ui5-tools.builder.uglifyPreload,ui5-tools.builder.uglifySourcesExclude,ui5-tools.builder.preloadSrc - readme: +credits section
- Upgrade dependencies
- New builder options:
Other 3
Notes
- Server startup vars changed
- New <% ISODATE %> key (Replacestrings)
- Upgrade dependencies version
Other 3
Notes
- New options
ui5-tools.server.odataSecureandui5-tools.server.resourcesSecure - Updated dependencies
- New output container ui5-tools. All relevant messages are printed there
- New options
Other 6
Notes
- Builder: now it is possible to auto-build themes (library.source.less) and styles (styles.less/projectNameFolder.less) on library and components both.
- Configurator: auto detects ui5 version for gateway proxy (ui5 provider)
- Server: now can serve root folder by setting
srcFolder= '', if build folder is equal tosrcFolder', Builder only generates css and Component-preload. - Updated default UI5 to version from 1.71.20 to 1.71.27
- Corrected resources server cache
- Infinite starting server bug solved related to manifest.json errors
Other 2
Notes
- Babelify files for ie11 compatibility (only for builder)
- Configurable server timeout (default: 60000ms)
Other 9
Notes
- SSL proxy verification default to false
- Replace strings in builder
- New configurator command: replace strings
- Auto theme less builder
- Bug/resource cache solved while restarting server (.env, manifest.json)
- New keymaps support
- Major refactor
- Implemented port finder
- PDF corrupted error solved
Other 3
Notes
- Authentication with
.envfile for Other proxies - Less autobuild to css
- Breaking changes! new option
resourcesUrito separate fromodataUrifor gateway users
- Authentication with
Other 3
Notes
- Multiple odataUri and odataMountPath for
OtherodataProxy - Bug correction in
OtherodataProxy - Example in
workspaceExamplewidth multipleOtherodataUri/odataMountPath pointing to northwind
- Multiple odataUri and odataMountPath for
Other 4
Notes
- Added "Other" destination to odataProxy and odataMountPath
- MD files bugs solved (docs folder)
- Default UI5 proxy switched from OpenUI5 to SAPUI5
- Autorestart server after changing configuration
Other 3
Notes
- Server: launchpad file sandbox.js fetched from sapui5 cdn
- Server: bug correction for cache cleaning at startup
- Server: url launchpad added last slash /flp/
Other 5
Notes
- Server: new sandbox launchpad for sapui5 framework. Customizable with firiSandboxConfig.json in workspaceroot
- Server: new server index with ui5, includes readme.md and docs folders (*.md). When SAPUI5 framework, shows link to the sandbox launchpad
- Server: new server-side caching for resources, cache cleaning at server startup
- Server: proxy for gateway asks user for username and password before server initialization
- Configurator: now you can select ui5 versions fetched from CDN, manual option is fallback
Others providing
Compare all 42 on the Build and dev-server tooling page →- ui5-middleware-route-proxyui5-middleware-route-proxyA UI5 server middleware that forwards requests matching a route prefix to a backend host, configured per route in ui5.yaml, with credentials read from a .env file rather than the yaml.independent, ui5UI5 server middleware proxying route prefixes to a backend
- ui5-task-cachebuster-indexingui5-task-cachebuster-indexingA UI5 builder task that copies the build output into a timestamped folder inside dist so the UI5 cachebuster can resolve it; it supports timestamps only, not the hash mode.independent, ui5UI5 builder task preparing build output for the cachebuster
- ui5-task-transpile-genui5-task-transpile-genA UI5 builder task that transpiles ES6 to ES5, including async/await, with Babel at build time, registered in ui5.yaml with a bundle definition that includes the regenerator runtime.independent, ui5UI5 builder task transpiling ES6 to ES5 with Babel
- ui5-middleware-odata-recorderui5-middleware-odata-recorderA UI5 server middleware that records the OData traffic a running app makes against a real backend and writes entity JSON files and metadata.xml that the Fiori elements mock server can replay.independent, ui5UI5 middleware recording OData traffic as mock server datasets
- ui5-plugin-loaderui5-plugin-loaderA UI5 Tooling v4 extension that registers a project's other extensions itself: one entry in ui5.yaml, and every dependency carrying a ui5-plugin-loader.json manifest is mounted as middleware and as a build task.independent, ui5UI5 Tooling v4 extension that registers other extensions
- ui5-deployerui5-deployerA custom module for UI5 Tooling that deploys Fiori/UI5 apps to SAP NetWeaver ABAP, SAP Cloud Platform Neo or Cloud Foundry, configured in a deployer section of ui5.yaml.independent, ui5UI5 Tooling module deploying Fiori/UI5 apps to SAP systems
- ui5-task-dts-generatorui5-task-dts-generatorA UI5 builder task that generates d.ts files, TypeScript type declarations, during the build of a UI5 library written in JavaScript, by wrapping @ui5/dts-generator.independent, ui5UI5 builder task generating d.ts type declarations
- ui5-task-minifierui5-task-minifierA UI5 builder task that minifies the HTML, CSS and JSON files the UI5 builder leaves as they are, with one switch per file type, using html-minifier-terser and clean-css.independent, ui5UI5 builder task minifying HTML, CSS and JSON files
- ui5-middleware-oidcui5-middleware-oidcA UI5 Tooling server middleware that puts an OpenID Connect login in front of the UI5 dev server, built on express-openid-connect, which receives its configuration block as written.independent, ui5UI5 dev server middleware adding an OpenID Connect login
- generator-ui5-library-af-deploygenerator-ui5-library-af-deployA Yeoman generator that writes the SAP BTP Application Frontend deployment configuration, mta.yaml, ui5-deploy.yaml, xs-app.json and xs-security.json, into an existing UI5 library project.independent, ui5Yeoman generator for Application Frontend config in UI5 libraries
- ui5-middleware-destinationui5-middleware-destinationA UI5 Tooling server middleware that proxies requests to backends named in WebIDE-style destination files and serves the routes of a neo-app.json, with Basic Authentication only.independent, ui5UI5 Tooling middleware proxying destinations and neo-app.json routes
- ui5-task-check-eocpui5-task-check-eocpA UI5 builder task that matches the UI5 version in ui5.yaml against the versions retrieved from ui5.sap.com and warns during the build once that version's End of Cloud Provisioning quarter has been reached.independent, ui5UI5 build task warning when the app's UI5 version reaches EOCP
- @ui5/cli@ui5/cliThe UI5 Tooling command line for project setup, the local dev server and the build, which defines a UI5 project's shape and its two extension points, custom middleware and custom tasks.sap official, ui5UI5 Tooling command line for project setup, dev server and build
- ui5-task-btp-manifestui5-task-btp-manifestA UI5 Tooling custom task that writes the surrounding app's sap.cloud service name into the bundled Spreadsheet Importer's manifest at build time, so the two match on SAP BTP.community org, ui5UI5 Tooling task writing the service name into the importer manifest
- ui5-middleware-approuterui5-middleware-approuterA UI5 CLI middleware that puts @sap/approuter in front of the UI5 dev server, proxying it to Cloud Foundry or XS Advanced destinations during development.community org, ui5UI5 CLI middleware proxying the dev server through @sap/approuter
- ui5-middleware-capui5-middleware-capA UI5 CLI middleware that runs a CDS server inside the UI5 dev server, mounted at a path the UI5 project configures, so one command serves the app and its CAP services.community org, ui5UI5 CLI middleware running a CDS server inside the UI5 dev server
- ui5-middleware-hmrui5-middleware-hmrAn experimental UI5 middleware for hot module replacement, swapping a changed module in during development instead of reloading the whole page.community org, ui5Experimental UI5 middleware for hot module replacement
- ui5-middleware-iasyncui5-middleware-iasyncA UI5 dev-server middleware built on browsersync.io that syncs user interactions across connected browsers over a websocket, replaying an action from one browser in the others for manual testing.community org, ui5UI5 middleware syncing interactions across browsers over websocket
- ui5-middleware-indexui5-middleware-indexA UI5 dev-server middleware that delivers a configured welcome page, index.html by default, for the root path instead of the ui5-server directory listing.community org, ui5UI5 middleware serving a chosen welcome page at the root path
- ui5-middleware-livereloadui5-middleware-livereloadA dev-server middleware that adds live reload to the UI5 dev server, reloading the page when the sources in the app's webapp folder change.community org, ui5Live reload middleware for the UI5 dev server
- ui5-middleware-oneloginui5-middleware-oneloginA UI5 dev-server middleware that logs into a system such as SAP Gateway with headless Playwright on the first request and reuses the session cookie for every later request.community org, ui5UI5 middleware logging in with Playwright and reusing the session
- ui5-middleware-serveframeworkui5-middleware-serveframeworkA UI5 middleware that serves a UI5 framework built on the local machine to the dev server, in place of a framework version resolved another way.community org, ui5UI5 middleware serving a locally built UI5 framework
- ui5-middleware-servestaticui5-middleware-servestaticA UI5 dev-server middleware that serves static resources from a filesystem path or an installed npm package path, built on serve-static, with either path settable through an environment variable.community org, ui5UI5 middleware serving static resources from a path or npm package
- ui5-middleware-simpleproxyui5-middleware-simpleproxyA UI5 dev-server middleware that proxies requests from the local dev server to a backend system, so the app can reach the backend's services during development.community org, ui5Dev-server middleware proxying requests to a backend system
- ui5-middleware-ui5ui5-middleware-ui5A UI5 middleware that lets one UI5 application be included as a dependency of another and served through that application's dev server.community org, ui5UI5 middleware including one UI5 application in another
- ui5-middleware-webjarsui5-middleware-webjarsA UI5 dev-server middleware that loads JAR files from a configured path and serves the static resources bundled inside them, following the WebJars convention of META-INF/resources/.community org, ui5UI5 middleware serving static resources from JAR files (WebJars)
- ui5-middleware-websocketui5-middleware-websocketUI5 middleware utilities that add WebSocket support to Express-based dev servers such as the UI5 server, which has no WebSocket channel of its own.community org, ui5WebSocket support for Express-based dev servers such as UI5's
- ui5-task-cachebusterui5-task-cachebusterA UI5 builder task that cachebusts a standalone UI5 application by moving its build output into a timestamped subfolder and pointing index.html's resource roots at it.community org, ui5UI5 builder task cachebusting standalone UI5 applications
- ui5-task-copyrightui5-task-copyrightA UI5 builder task that appends copyright headers to TypeScript, JavaScript and XML files on every build, so the header is not added to each source file by hand.community org, ui5UI5 builder task appending copyright headers to source files
- ui5-task-flatten-libraryui5-task-flatten-libraryA UI5 builder task that flattens a library's build output, removing the project namespace and resources folder for deployment to SAP NetWeaver, now also offered by the UI5 CLI itself.community org, ui5UI5 builder task flattening library output for SAP NetWeaver
- ui5-task-i18ncheckui5-task-i18ncheckA UI5 builder task that cross-checks every XML view against the app's i18n properties files and logs a warning where a translation is missing; views created in JavaScript are not checked.community org, ui5UI5 builder task checking XML views for missing i18n texts
- ui5-task-minify-xmlui5-task-minify-xmlA UI5 builder task that minifies XML resources such as views and fragments, which a plain UI5 build otherwise ships unminified.community org, ui5UI5 builder task minifying XML views and fragments
- ui5-task-pwa-enablerui5-task-pwa-enablerA UI5 builder task that turns a UI5 application into a progressive web app by generating a web manifest and a service worker under one of five caching strategies.community org, ui5UI5 builder task turning a UI5 app into a progressive web app
- ui5-task-zipperui5-task-zipperA build task for the UI5 tooling that packages the UI5 build result, the webapp, as a zip archive at the end of the build.community org, ui5Build task packaging the UI5 build result as a zip archive
- ui5-tooling-lessui5-tooling-lessA UI5 CLI extension, a build task and a dev-server middleware, that compiles an app's Less files into CSS at build time and live while the UI5 server runs.community org, ui5UI5 CLI extension compiling Less files into CSS
- ui5-tooling-modulesui5-tooling-modulesA set of UI5 tooling extensions that load and convert plain npm packages into UI5 AMD-like modules, so the UI5 module loader can consume them.community org, ui5UI5 tooling extensions loading npm packages as UI5 modules
- ui5-tooling-stringreplaceui5-tooling-stringreplaceA UI5 CLI extension for string replacement during the build, for placeholders or tokens in source files that have to be replaced at build time.community org, ui5UI5 CLI extension for string replacement during the build
- ui5-tooling-transpileui5-tooling-transpileA UI5 CLI extension that transpiles modern JavaScript or TypeScript during the UI5 build, with a transformJSX option that handles JSX and TSX in the same step.community org, ui5UI5 CLI extension transpiling code during the UI5 build
- @ui5/logger@ui5/loggerUI5 CLI's internal logger, described by its own readme as internal — it appears here because other UI5 tooling depends on it.sap official, ui5Internal logger of the UI5 CLI
- @ui5/middleware-code-coverage@ui5/middleware-code-coverageUI5 CLI server middleware that instruments a project's JavaScript files with Istanbul as the dev server sends them, and generates the coverage report from the records the OpenUI5 QUnit tests send back.sap official, ui5UI5 CLI middleware for Istanbul code coverage
- @ui5/tooling-webc@ui5/tooling-webcDeprecated UI5 Tooling extensions that generate UI5 library wrapper projects for UI5 Web Components and serve them during development; the README points to ui5-tooling-modules instead.sap official, ui5Deprecated UI5 Tooling extensions for UI5 Web Components wrappers
Details
Sources
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
Contributors
History in the atlas
- First seen.
For your agent
- Ref
artifact:carlosorozco88-ui5-tools- JSON
- /artifacts/carlosorozco88-ui5-tools.json
- MCP
- Connecting an agent