{"ref":"artifact:capire-xtravels-java","page":"/artifacts/capire-xtravels-java","json":"/artifacts/capire-xtravels-java.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"capire-xtravels-java","name":"xtravels-java","artifact_type":"sample","ecosystem":"cap","flavors":[{"key":"java","source":{"url":"https://github.com/capire/xtravels-java","title":"capire/xtravels-java — README","checked":"2026-09-13","quote":"A travel booking application built with CAP Java using master data provided by"}}],"use_as":"starting-point","domain":"learning-and-reference","origin_ring":"sap-official","description":{"one_line":"The Java twin of xtravels: a Spring Boot travel-booking application built on master data from xflights-java, which CAP mocks automatically unless a hybrid profile connects a running instance.","short":"CAP Java travel-booking app built on xflights-java master data","what_it_solves":"`mvn package` builds it, then running the `Application` class starts it at localhost:8080, with the xflights dependency mocked automatically by CAP unless a `hybrid` Spring profile is set to connect it to a running xflights-java instance instead. Both Maven and npm dependencies for the `capire` packages are resolved through GitHub's own package registries, the same registry pattern the Node xtravels uses for its own dependency."},"links":{"repo":"https://github.com/capire/xtravels-java"},"identity":{"license":"Apache-2.0"},"source_available":true,"demonstrates":["capability:reference-apps"],"maintainers":["actor:capire"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"contributors":["actor:agoerler","actor:akatuoro","actor:beckermarc","actor:braunmatthias","actor:davidhunglam","actor:mattschur","actor:mofterdinger","actor:rjayasinghe","actor:sjvans","actor:stefanhenke","actor:swaldmann","actor:vmikhailenko"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"13 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":"Java CI with Maven green, 2026-10-14"}],"practice":[{"label":"Tests","tier":"good","evidence":"4 test files"},{"label":"Docs","tier":"good","evidence":"README 4 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-26","npm":"not published under this name","stars":2,"forks":0,"open_issues":3,"archived":false,"pushed_at":"2026-10-26","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","contributors":13,"tree_truncated":false,"test_files":4,"workflows":3,"other_ci":false,"readme_bytes":4457,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2025-09-15","last_commit":"2026-10-14","commits":95,"ci_status":"success","ci_run_at":"2026-10-14","ci_workflow":"Java CI with Maven","ci_event":"push","readme_path":"README.md","readme_sha":"5eb3df07df7a53fd6faca17aaed1d5d348ccd897","created_at":"2025-10-07T11:53:19Z","open_prs":3,"repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:capire","name":"Capire Docs & Samples","json":"/actors/capire.json"}],"contributors":[{"ref":"actor:agoerler","name":"Adrian Görler","json":"/actors/agoerler.json"},{"ref":"actor:braunmatthias","name":"BraunMatthias","json":"/actors/braunmatthias.json"},{"ref":"actor:davidhunglam","name":"David H Lam","json":"/actors/davidhunglam.json"},{"ref":"actor:akatuoro","name":"Johannes Vogt","json":"/actors/akatuoro.json"},{"ref":"actor:beckermarc","name":"Marc Becker","json":"/actors/beckermarc.json"},{"ref":"actor:mofterdinger","name":"Markus Ofterdinger","json":"/actors/mofterdinger.json"},{"ref":"actor:mattschur","name":"Matthias Schur","json":"/actors/mattschur.json"},{"ref":"actor:rjayasinghe","name":"Robin","json":"/actors/rjayasinghe.json"},{"ref":"actor:sjvans","name":"sjvans","json":"/actors/sjvans.json"},{"ref":"actor:stefanhenke","name":"Stefan Henke","json":"/actors/stefanhenke.json"},{"ref":"actor:swaldmann","name":"Steffen Waldmann","json":"/actors/swaldmann.json"},{"ref":"actor:vmikhailenko","name":"Vladimir","json":"/actors/vmikhailenko.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}