{"ref":"artifact:sap-samples-fiori-elements-v4-cap-advanced","page":"/artifacts/sap-samples-fiori-elements-v4-cap-advanced","json":"/artifacts/sap-samples-fiori-elements-v4-cap-advanced.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-fiori-elements-v4-cap-advanced","name":"SAP-samples/fiori-elements-v4-cap-advanced","artifact_type":"sample","ecosystem":"cap","use_as":"reference","domain":"ui-and-frontend-bridge","origin_ring":"sap-official","description":{"one_line":"Branch-by-branch solutions for the UX405 e-learning course, each one an exercise in the advanced concepts of a Fiori elements app on a CAP OData V4 service.","short":"Exercise solutions for the UX405 course on Fiori elements with CAP","what_it_solves":"The app is built on the CAP-SFLIGHT model, and each solution branch answers one exercise on top of the branch before it: adjusting the list report and object page of a Display Customers app, enabling the flexible column layout, changing standard UI texts, adding filter fields and application-specific actions, adding progress indicators, bullet micro charts and quick contact views to tables, and wiring navigation between the Customers and Travels apps by toolbar button and by link. Later branches extend into chart-based analytics on the list report, including visual filters. Each branch is meant to be checked out and compared against the one it is based on rather than read as a single finished application."},"links":{"repo":"https://github.com/SAP-samples/fiori-elements-v4-cap-advanced"},"type_properties":{"form":{"value":"tutorial","sources":[{"url":"https://github.com/SAP-samples/fiori-elements-v4-cap-advanced","title":"SAP-samples/fiori-elements-v4-cap-advanced — README","checked":"2026-10-18","quote":"Solutions for the course UX405 “Developing an SAP Fiori Elements App Based on a CAP OData V4 Service: Advanced E-learning”"}]}},"identity":{"license":"Apache-2.0"},"demonstrates":["capability:fiori-annotations"],"maintainers":["actor:sap-samples"],"source_available":true,"provenance":{"discovered_via":[{"source":"source:github-orgs"}],"first_seen":"2026-09-13"},"drafted_with_ai":true,"contributors":["actor:ajinkyapatil8190","actor:btbernard","actor:c-kobo","actor:chgeo","actor:danjoa","actor:danschlachter","actor:davidhunglam","actor:drktfl","actor:fakirdi","actor:green-m-bit","actor:gregorwolf","actor:hitesh-parmar","actor:iwonahahn","actor:johannes-vogel","actor:marcelwaechter","actor:mikhailgoncharov","actor:rbrechter","actor:rjayasinghe","actor:stefan0816","actor:stewsk","actor:tanyamedvedeva","actor:uwe-klinger"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"24 contributors, org-owned"},{"label":"Repository","tier":"fair","evidence":"pushed 2026-02, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"no release dates"},{"label":"Maintainer's CI","tier":"fair","evidence":"workflows present, no completed run on the default branch"}],"practice":[{"label":"Tests","tier":"good","evidence":"20 test files"},{"label":"Docs","tier":"good","evidence":"README 15 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":91,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":91,"forks":66,"open_issues":7,"archived":false,"pushed_at":"2026-02-17","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2022-05-24T12:20:01Z","open_prs":2,"tree_truncated":false,"test_files":20,"workflows":3,"other_ci":false,"readme_bytes":14981,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2021-04-20","last_commit":"2026-02-17","commits":633,"contributors":24,"readme_path":"README.md","readme_sha":"e141a753303c02c31c9ca2d768a1aee049aa9fc4","repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:sap-samples","name":"SAP Samples","json":"/actors/sap-samples.json"}],"contributors":[{"ref":"actor:ajinkyapatil8190","name":"Ajinkya Patil","json":"/actors/ajinkyapatil8190.json"},{"ref":"actor:btbernard","name":"Brian Bernard","json":"/actors/btbernard.json"},{"ref":"actor:chgeo","name":"Christian Georgi","json":"/actors/chgeo.json"},{"ref":"actor:c-kobo","name":"Christian Kolbowski","json":"/actors/c-kobo.json"},{"ref":"actor:danjoa","name":"Daniel Hutzel","json":"/actors/danjoa.json"},{"ref":"actor:danschlachter","name":"Daniel Schlachter","json":"/actors/danschlachter.json"},{"ref":"actor:davidhunglam","name":"David H Lam","json":"/actors/davidhunglam.json"},{"ref":"actor:fakirdi","name":"Dimitri Herber","json":"/actors/fakirdi.json"},{"ref":"actor:drktfl","name":"Dirk Teufel","json":"/actors/drktfl.json"},{"ref":"actor:green-m-bit","name":"green-m-bit","json":"/actors/green-m-bit.json"},{"ref":"actor:gregorwolf","name":"Gregor Wolf","json":"/actors/gregorwolf.json"},{"ref":"actor:hitesh-parmar","name":"Hitesh Parmar","json":"/actors/hitesh-parmar.json"},{"ref":"actor:iwonahahn","name":"Iwona Hahn","json":"/actors/iwonahahn.json"},{"ref":"actor:johannes-vogel","name":"Johannes Vogel","json":"/actors/johannes-vogel.json"},{"ref":"actor:marcelwaechter","name":"MarcelWaechter","json":"/actors/marcelwaechter.json"},{"ref":"actor:mikhailgoncharov","name":"Mikhail Goncharov","json":"/actors/mikhailgoncharov.json"},{"ref":"actor:rbrechter","name":"rbrechter","json":"/actors/rbrechter.json"},{"ref":"actor:rjayasinghe","name":"Robin","json":"/actors/rjayasinghe.json"},{"ref":"actor:stefan0816","name":"Stefan Engelhardt","json":"/actors/stefan0816.json"},{"ref":"actor:stewsk","name":"Steffen Weinstock","json":"/actors/stewsk.json"},{"ref":"actor:tanyamedvedeva","name":"TanyaMedvedeva","json":"/actors/tanyamedvedeva.json"},{"ref":"actor:uwe-klinger","name":"Uwe Klinger","json":"/actors/uwe-klinger.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}