{"ref":"artifact:capire-xflights","page":"/artifacts/capire-xflights","json":"/artifacts/capire-xflights.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"capire-xflights","name":"xflights","artifact_type":"sample","ecosystem":"cap","use_as":"reference","domain":"data-and-persistence","origin_ring":"sap-official","description":{"one_line":"A reuse package serving master-data entities (Airlines, Airports and Flights) as a service that other CAP applications compose into their own data model.","short":"CAP reuse package serving Airlines, Airports and Flights data","what_it_solves":"Two service interfaces split maintenance from consumption: an admin service to maintain the data from a UI or a remote system, and a data service that denormalises `Flights` together with its `FlightConnections` for consuming apps. `cds export` turns the data service into a standalone client package, `@capire/xflights-data`, published to GitHub Packages so other applications, such as xtravels, import and mix its entities into their own schema instead of redefining them. An npm workspace setup lets the same package be linked locally during development, ahead of any publish."},"links":{"repo":"https://github.com/capire/xflights"},"type_properties":{"form":{"value":"reference-application","sources":[{"url":"https://github.com/capire/xflights","title":"xflights — README","checked":"2026-10-18","quote":"This is a reuse package to manage and serve master data like _Airlines_, _Airports_, and _Flights_."}]}},"identity":{"license":"Apache-2.0"},"source_available":true,"demonstrates":["capability:data-modelling","capability:service-integration"],"maintainers":["actor:capire"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"contributors":["actor:akatuoro","actor:bobdenos","actor:chgeo","actor:danjoa","actor:dj-adams","actor:nkaputnik","actor:renejeglinsky","actor:sjvans","actor:stewsk","actor:swaldmann"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"10 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, 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":"good","evidence":"Cloud Foundry green, 2026-10-01"}],"practice":[{"label":"Tests","tier":"good","evidence":"1 test file"},{"label":"Docs","tier":"good","evidence":"README 9 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":6,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":6,"forks":6,"open_issues":4,"archived":false,"pushed_at":"2026-10-12","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","contributors":10,"tree_truncated":false,"test_files":1,"workflows":1,"other_ci":false,"readme_bytes":8719,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2025-06-22","last_commit":"2026-10-01","commits":127,"ci_status":"success","ci_run_at":"2026-10-01","ci_workflow":"Cloud Foundry","ci_event":"push","readme_path":"readme.md","readme_sha":"9162058acd03c82edee62777a8dca5eaaeb32420","created_at":"2025-06-22T11:09:40Z","open_prs":2,"repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:capire","name":"Capire Docs & Samples","json":"/actors/capire.json"}],"contributors":[{"ref":"actor:bobdenos","name":"Bob den Os","json":"/actors/bobdenos.json"},{"ref":"actor:chgeo","name":"Christian Georgi","json":"/actors/chgeo.json"},{"ref":"actor:danjoa","name":"Daniel Hutzel","json":"/actors/danjoa.json"},{"ref":"actor:dj-adams","name":"DJ Adams","json":"/actors/dj-adams.json"},{"ref":"actor:akatuoro","name":"Johannes Vogt","json":"/actors/akatuoro.json"},{"ref":"actor:nkaputnik","name":"Nick Josipovic","json":"/actors/nkaputnik.json"},{"ref":"actor:renejeglinsky","name":"René Jeglinsky","json":"/actors/renejeglinsky.json"},{"ref":"actor:sjvans","name":"sjvans","json":"/actors/sjvans.json"},{"ref":"actor:swaldmann","name":"Steffen Waldmann","json":"/actors/swaldmann.json"},{"ref":"actor:stewsk","name":"Steffen Weinstock","json":"/actors/stewsk.json"}],"explained_by":[{"ref":"content:devtoberfest-2026-cap-level-data-federation","name":"CAP-level Data Federation","json":"/content/devtoberfest-2026-cap-level-data-federation.json"}],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}