{"id":18890,"library":"ui5-middleware-ui5","title":"ui5-middleware-ui5","description":"Middleware for ui5-server (UI5 CLI v3) that allows including and serving UI5 application dependencies within the same server instance. Version 3.5.0 is the latest stable release, actively maintained. It enables embedding UI5 apps as dependencies, configurable via ui5.yaml, and supports mount path customization, module-specific configuration, and debug logging. Requires @ui5/cli >= 3.0.0 with specVersion '3.0'. Community-driven project part of the UI5 ecosystem showcase, distinct from official SAP middlewares.","status":"active","version":"3.5.0","language":"javascript","source_language":"en","source_url":"https://github.com/ui5-community/ui5-ecosystem-showcase","tags":["javascript"],"install":[{"cmd":"npm install ui5-middleware-ui5","lang":"bash","label":"npm"},{"cmd":"yarn add ui5-middleware-ui5","lang":"bash","label":"yarn"},{"cmd":"pnpm add ui5-middleware-ui5","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency for file system access in UI5 build","package":"@ui5/fs","optional":false},{"reason":"peer dependency for UI5 project configuration","package":"@ui5/project","optional":false},{"reason":"peer dependency for UI5 server framework","package":"@ui5/server","optional":false}],"imports":[],"quickstart":{"code":"// Install the middleware as dev dependency\nnpm install ui5-middleware-ui5 --save-dev\n\n// In your ui5.yaml (specVersion: \"3.0\"), add the middleware configuration:\n// server:\n//   customMiddleware:\n//     - name: ui5-middleware-ui5\n//       afterMiddleware: compression\n//       configuration:\n//         modules:\n//           my-ui5-app:\n//             mountPath: \"/myapp\"\n//\n// The moduleId \"my-ui5-app\" must be the name of a npm dependency containing a UI5 app.\n// Then start your server with:\nui5 serve","lang":"yaml","description":"Shows installation and minimal configuration to serve a UI5 app dependency via ui5-middleware-ui5."},"warnings":[{"fix":"Upgrade to UI5 CLI V3 and update your ui5.yaml to specVersion: '3.0'.","message":"Version 3.x requires UI5 CLI V3 and specVersion '3.0'. Incompatible with UI5 CLI V2.","severity":"breaking","affected_versions":">=3.0.0 <4.0.0"},{"fix":"Upgrade to v3 and migrate to UI5 CLI V3.","message":"Version 2.x (if available) is deprecated; upgrade to v3 to get latest features and security fixes.","severity":"deprecated","affected_versions":"<3.0.0"},{"fix":"Ensure each module's mountPath is unique to avoid route conflicts.","message":"The middleware uses express router internally; be careful with mountPath collisions when multiple modules are configured.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Place referenced files inside the UI5 app's directory.","message":"Configuration options like configFile, workspaceConfigFile are relative to the UI5 app root, not the consumer project.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Set workspaceName explicitly in the middleware configuration if the default workspace is not 'default'.","message":"The 'default' workspace lookup changed in UI5 CLI V3; ensure workspaceName matches the workspace defined in the UI5 app.","severity":"breaking","affected_versions":">=3.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"npm install @ui5/fs @ui5/project @ui5/server --save-dev","cause":"Missing required peer dependencies.","error":"Cannot find module '@ui5/fs' or '@ui5/project'"},{"fix":"Update ui5.yaml: specVersion: \"3.0\" and ensure you have UI5 CLI V3 installed.","cause":"ui5.yaml uses an older specVersion (e.g., \"2.0\" or \"1.0\").","error":"UI5 server does not start: Requires specVersion \"3.0\""},{"fix":"npm install ui5-middleware-ui5 --save-dev","cause":"Package not installed or missing from node_modules.","error":"Middleware not included: Could not find module 'ui5-middleware-ui5'"},{"fix":"Verify middleware name: 'ui5-middleware-ui5', and ensure afterMiddleware points to an existing middleware like 'compression'.","cause":"Incorrect configuration in ui5.yaml; the middleware name is misspelled or the afterMiddleware value is wrong.","error":"TypeError: Cannot read properties of undefined (reading 'getMiddleware')"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}