ui5con-2026-ui5-linter-workshop
SAP's UI5con hands-on workshop that takes a legacy UI5 app, seeded with deprecated APIs and inline scripts, from its first UI5 linter report to a clean, CSP-compliant one.
A legacy UI5 codebase accumulates deprecated APIs, global variables and CSP violations that nobody notices until the next major release breaks them, and this workshop project is built to have exactly that problem on purpose. It is a variant of the OpenUI5 Todo sample app, seeded with jQuery.sap.* calls, sap.ui.controller(), global variable access and inline scripts, so attendees run UI5 linter, auto-fix what it can, and resolve the rest by hand across a set of hands-on lecture sections. Its own README warns not to use the code as a best-practice reference; the modernised result, with every finding resolved, sits on the repository's final-result branch.
Facts
Where it sits
Who is behind it
In the atlas: maintains 222@SAP-samplesmaintainerMatthias OßwaldContributes to this
In the atlas: contributes to 29@matz3Max ReichmannContributes to this
In the atlas: contributes to 10@maxreichmann2 contributors
What it declares
Every artifact
- Type
- Sample
- Origin
- By SAP
- Use as
- A reference
As a sample
- Form
- Workshop or CodeJam material
Connections
Catching problems in code, models and configuration by rules
Download
README
quoted from SAP-samples/ui5con-2026-ui5-linter-workshop under Apache-2.0, read
UI5 Linter Workshop - Sample App
UI5con 2026 Germany Hands-on Workshop: UI5 Linter in Action: Integrating It Into Your Development Process
This repository contains the demo project for the UI5 linter Hands-On at UI5con 2026. It is a variant of the OpenUI5 Todo sample application available at github.com/UI5/sample-app.
About the Workshop
Modernize a legacy UI5 app end-to-end using UI5 linter — from your first ui5lint report to a clean, CSP-compliant, future-proof codebase. You'll auto-fix what you can, manually resolve the rest, and wire linting into your workflow and CI so regressions never sneak back in.
Prerequisites: Laptop with Node.js (LTS) and Git installed, a code editor, and basic UI5 development experience.
Workshop Materials
Presentation slides: Download the workshop slides (PDF)
Start here: hands-on-lectures/00-overview.md
The workshop is divided into the following sections:
- Introduction & Setup (5 min)
- Running UI5 Linter - First Analysis (10 min)
- Understanding Linter Rules (5 min)
- Hands-on: Auto-fixing Issues (10 min)
- Hands-on: Manual Fixes (15 min)
- Best Practices & Wrap-up (optional/informational)
Reference: Appendix - Legacy Patterns
(Optional Outlook) Coding Agents Support:
If you'd like to automate the modernization steps you've learned here, check out the UI5 Modernization Plugin — a coding‑agent toolkit that builds on the UI5 linter and orchestrates a five‑phase modernization with per‑phase verification and commits. Learn more in the SAP Community Blogpost.
About This Demo Project
Important
This project intentionally contains legacy code patterns for educational purposes. Attendees will identify and fix these issues step-by-step during the workshop using the UI5 linter.
Do not use this code as a reference for best practices! The legacy patterns include:
- Deprecated APIs (
jQuery.sap.*,sap.ui.controller(), etc.) - Global variable access
- Deprecated themes and libraries
- CSP-violating inline scripts
- Legacy test setup
Checkout github.com/UI5/sample-app for the original version of this application, following best practices and using modern API.
Final Result
The modernized version of this application (with all linter issues resolved) is available on the final-result branch.
How to obtain support
Create an issue in this repository if you find a bug or have questions about the content.
For additional support, ask a question in SAP Community.
Contributing
If you wish to contribute code, offer fixes or improvements, please send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.
License
Copyright 2026 SAP SE or an SAP affiliate company and ui5con-2026-ui5-linter-workshop contributors. Please see our LICENSE for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available via the REUSE tool.
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:sap-samples-ui5con-2026-ui5-linter-workshop- JSON
- /artifacts/sap-samples-ui5con-2026-ui5-linter-workshop.json
- MCP
- Connecting an agent