{"ref":"artifact:sap-samples-ui5con-2026-chrome-built-in-ai","page":"/artifacts/sap-samples-ui5con-2026-chrome-built-in-ai","json":"/artifacts/sap-samples-ui5con-2026-chrome-built-in-ai.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-ui5con-2026-chrome-built-in-ai","name":"ui5con-2026-chrome-built-in-ai","artifact_type":"sample","ecosystem":"ui5","use_as":"starting-point","domain":"ai-and-agents","origin_ring":"sap-official","description":{"one_line":"A hands-on UI5 workshop that adds Chrome's on-device AI APIs to a small TypeScript app for triaging multilingual support tickets: language detection, summaries, structured extraction, translation and replies.","short":"UI5 workshop adding Chrome's on-device AI APIs to a TypeScript app","what_it_solves":"Support tickets arrive in German, Spanish, French and English, and the exercises wire a UI5 list/detail app to Chrome's built-in AI APIs to detect the language, summarise the ticket, extract sentiment, category and priority as structured JSON, translate it, and draft a reply, all on-device with no backend model or API key. Every call goes through one seam, `webapp/model/ai.ts`, so the `?mock=1` flag can swap in canned output when Chrome's on-device model is unavailable, which the README says happens on corporate-managed profiles. The same exercises run on two tracks that end at the same app: a manual track of diffs to apply, and an AI-assistant track of prompts for an assistant with UI5 MCP wired up, with the manual exercise as its answer key. It stops at Chrome's own AI APIs: the ticket data comes from a small OData V4 service that ships ready-made in the starter, and a branch per exercise holds the finished state to jump to."},"links":{"repo":"https://github.com/SAP-samples/ui5con-2026-chrome-built-in-ai"},"identity":{"license":"Apache-2.0"},"source_available":true,"type_properties":{"form":{"value":"workshop","sources":[{"url":"https://github.com/SAP-samples/ui5con-2026-chrome-built-in-ai","title":"SAP-samples/ui5con-2026-chrome-built-in-ai — repository description","checked":"2026-10-19","quote":"A hands-on workshop repo that teaches UI5 developers how to add on-device AI to a small UI5 (TypeScript) app - summarize, detect, translate, and classify support tickets in the browser with Chrome's built-in AI, no backend or API key."}]}},"demonstrates":["capability:llm-integration"],"requires":[{"ref":"external:nodejs","for":"running the UI5 dev server and the OData V4 data service the starter ships; the README pins the versions it expects.","sources":[{"url":"https://github.com/SAP-samples/ui5con-2026-chrome-built-in-ai","title":"SAP-samples/ui5con-2026-chrome-built-in-ai — README, Requirements","checked":"2026-10-19","quote":"**Node.js** `^20.17.0` or `>=22.9.0`, and **npm** `>=8` — to run the UI5 dev server and the data service"}]}],"maintainers":["actor:sap-samples"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"contributors":["actor:adrian-bobev"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"3 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-07, not archived"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no UI5 release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no UI5 release lines in the atlas"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"fair","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"docs/ with 20 pages, README 8 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":2,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":2,"forks":0,"open_issues":0,"archived":false,"pushed_at":"2026-07-14","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2026-07-09T19:41:08Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":8264,"docs_files":20,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2026-07-09","last_commit":"2026-07-14","commits":14,"contributors":3,"readme_path":"README.md","readme_sha":"4b66c6975c3084e4de5f2ade66c584499ceb0b67","repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:sap-samples","name":"SAP Samples","json":"/actors/sap-samples.json"}],"contributors":[{"ref":"actor:adrian-bobev","name":"Adrian Bobev","json":"/actors/adrian-bobev.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}