{"ref":"artifact:ui5-community-ui5-task-flatten-library","page":"/artifacts/ui5-community-ui5-task-flatten-library","json":"/artifacts/ui5-community-ui5-task-flatten-library.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"ui5-community-ui5-task-flatten-library","name":"ui5-task-flatten-library","artifact_type":"build-tool","ecosystem":"ui5","domain":"developer-experience","origin_ring":"community-org","description":{"one_line":"A UI5 builder task that flattens a library's build output, removing the project namespace and resources folder for deployment to SAP NetWeaver, now also offered by the UI5 CLI itself.","short":"UI5 builder task flattening library output for SAP NetWeaver","what_it_solves":"SAP NetWeaver deployment expects a flat library package, but a normal UI5 library build nests output under a resources/<namespace>/ path. This task strips that prefix — turning `dist/resources/my/lib/library.js` into `dist/library.js` — while dropping test-resources files from the result and warning about any source file that falls outside the project's own namespace. Since [@ui5/cli](artifact:sap-ui5-cli) 3.8.0 the UI5 CLI's own build output styles, Flat and Namespace, offer the same restructuring natively, and the maintainer's README points migrating projects at that feature instead."},"links":{"repo":"https://github.com/ui5-community/ui5-ecosystem-showcase/tree/main/packages/ui5-task-flatten-library","npm":"https://www.npmjs.com/package/ui5-task-flatten-library"},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://github.com/ui5-community/ui5-ecosystem-showcase/tree/main/packages/ui5-task-flatten-library","title":"ui5-task-flatten-library — README","checked":"2026-10-18","quote":"npm install ui5-task-flatten-library --save-dev"}]}},"identity":{"license":"Apache-2.0"},"source_available":true,"provides":[{"capability":"capability:ui5-build-tooling","what_it_does":"Removes the project namespace and resources folder from a library build so the output matches what SAP NetWeaver deployment expects.","sources":[{"url":"https://www.npmjs.com/package/ui5-task-flatten-library","title":"ui5-task-flatten-library — npm","checked":"2026-09-13","quote":"to prepare build result for deployment to SAP NetWeaver."}]}],"provenance":{"discovered_via":[{"source":"source:npm"}],"first_seen":"2026-09-13"},"maintainers":["actor:ui5-community"],"drafted_with_ai":true,"contributors":["actor:d3xter666","actor:flovogt","actor:marianfoo","actor:matz3","actor:petermuessig","actor:randombyte","actor:uxkjaer","actor:vobu"],"changed_in":[{"version":"3.0.0","date":"2023-07-31","what_changed":"Support for UI5 Tooling V2 is removed: from this release the task runs on UI5 Tooling V3.","invalidates":"A ui5.yaml written for UI5 Tooling V2 that loads this task.","source":{"url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#300-2023-07-31","title":"ui5-task-flatten-library changelog, 3.0.0","checked":"2026-10-19","quote":"The support for UI5 Tooling V2 has been removed"}}]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"fair","evidence":"5 months since release"},{"label":"Continuity","tier":"good","evidence":"63 contributors, 1 publisher, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, 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":"good","evidence":"Release green, 2026-10-24"}],"practice":[{"label":"Tests","tier":"good","evidence":"527 test files"},{"label":"Docs","tier":"good","evidence":"docs/ with 6 pages, README 3 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":819,"unit":"installs/week","note":"More people watching than installing — noticed deliberately rather than pulled in."},{"value":220,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","latest_version":"3.1.4","majors":{"3":{"version":"3.0.0","date":"2023-07-31"},"0.2":{"version":"0.2.0","date":"2020-09-20"},"0.3":{"version":"0.3.0","date":"2022-06-22"}},"license":"Apache-2.0","first_release":"2020-09-20","last_release":"2026-05-21","releases":18,"cadence_days":126,"maintainers":1,"repository":"git+https://github.com/ui5-community/ui5-ecosystem-showcase.git","repository_directory":"packages/ui5-task-flatten-library","peer_cds":null,"test_script":false,"types":false,"downloads_weekly":819,"stars":220,"forks":100,"open_issues":28,"archived":false,"pushed_at":"2026-10-24","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","contributors":63,"tree_truncated":false,"test_files":527,"workflows":5,"other_ci":false,"readme_bytes":3209,"docs_files":6,"changelog":false,"license_file":true,"dts_files":4,"ci_status":"success","ci_run_at":"2026-10-24","ci_workflow":"Release","ci_event":"push","readme_path":"packages/ui5-task-flatten-library/README.md","readme_sha":"ff37c9da537bb287783bcfe4e215a4a3225397be","months_since_release":5,"dormant":false,"dependencies":0,"node_engine":null,"downloads_monthly":6095,"created_at":"2019-08-15T18:55:24Z","open_prs":13,"first_commit":"2020-09-07","last_commit":"2026-05-21","commits":41,"repo_read":"2026-10-25"},"release_notes":{"license":"Apache-2.0","quotable":true,"source":{"kind":"npm","path":"CHANGELOG.md","version":"3.1.4","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md"},"format":"conventional","releases":[{"version":"3.1.4","date":"2026-05-21","date_source":"heading","heading":"3.1.4 (2026-05-21)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#314-2026-05-21","sections":[],"hash":"c471b041c21c1b41"},{"version":"3.1.3","date":"2026-01-15","date_source":"heading","heading":"3.1.3 (2026-01-15)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#313-2026-01-15","sections":[],"hash":"c471b041c21c1b41"},{"version":"3.1.2","date":"2025-09-17","date_source":"heading","heading":"3.1.2 (2025-09-17)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#312-2025-09-17","sections":[],"hash":"c471b041c21c1b41"},{"version":"3.1.1","date":"2025-09-15","date_source":"heading","heading":"3.1.1 (2025-09-15)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#311-2025-09-15","sections":[],"hash":"c471b041c21c1b41"},{"version":"3.1.0","date":"2024-09-06","date_source":"heading","heading":"3.1.0 (2024-09-06)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#310-2024-09-06","sections":[{"kind":"feature","heading":"Features","items":1}],"hash":"05a3cd4545664af4"},{"version":"3.0.2","date":"2023-12-25","date_source":"heading","heading":"3.0.2 (2023-12-25)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#302-2023-12-25","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"ce1fb7aa05e230e0"},{"version":"3.0.1","date":"2023-10-14","date_source":"heading","heading":"3.0.1 (2023-10-14)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#301-2023-10-14","sections":[],"hash":"c471b041c21c1b41"},{"version":"3.0.0","date":"2023-07-31","date_source":"heading","heading":"3.0.0 (2023-07-31)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#300-2023-07-31","sections":[{"kind":"fix","heading":"Bug Fixes","items":1},{"kind":"feature","heading":"Features","items":2},{"kind":"breaking","heading":"BREAKING CHANGES","items":1}],"hash":"dbcfc74d2b0b477d","cited_by":[{"version":"3.0.0","date":"2023-07-31"}]},{"version":"0.3.1","date":"2023-03-20","date_source":"heading","heading":"0.3.1 (2023-03-20)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#031-2023-03-20","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"0547a1a7351f9194"},{"version":"0.3.0","date":"2022-06-21","date_source":"heading","heading":"0.3.0 (2022-06-21)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#030-2022-06-21","sections":[{"kind":"feature","heading":"Features","items":1},{"kind":"breaking","heading":"BREAKING CHANGES","items":26}],"hash":"2bd103ddb6144cc4"},{"version":"0.2.7","date":"2022-06-03","date_source":"heading","heading":"0.2.7 (2022-06-03)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#027-2022-06-03","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"7bc185b58c27589f"},{"version":"0.2.6","date":"2022-05-22","date_source":"heading","heading":"0.2.6 (2022-05-22)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#026-2022-05-22","sections":[],"hash":"c471b041c21c1b41"},{"version":"0.2.5","date":"2022-04-19","date_source":"heading","heading":"0.2.5 (2022-04-19)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#025-2022-04-19","sections":[{"kind":"other","heading":"Reverts","items":1}],"hash":"5afbeeba9343dd54"},{"version":"0.2.4","date":"2022-04-11","date_source":"heading","heading":"0.2.4 (2022-04-11)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#024-2022-04-11","sections":[],"hash":"c471b041c21c1b41"},{"version":"0.2.3","date":"2021-10-29","date_source":"heading","heading":"0.2.3 (2021-10-29)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#023-2021-10-29","sections":[],"hash":"c471b041c21c1b41"},{"version":"0.2.2","date":"2021-05-05","date_source":"heading","heading":"0.2.2 (2021-05-05)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#022-2021-05-05","sections":[],"hash":"c471b041c21c1b41"},{"version":"0.2.1","date":"2021-03-06","date_source":"heading","heading":"0.2.1 (2021-03-06)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#021-2021-03-06","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"651bf4f528b79890"},{"version":"0.2.0","date":"2020-09-20","date_source":"heading","heading":"0.2.0 (2020-09-20)","url":"https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-task-flatten-library/CHANGELOG.md#020-2020-09-20","sections":[{"kind":"feature","heading":"Features","items":1}],"hash":"47247ba6599e2159"}],"versions":[{"version":"3.1.4","date":"2026-05-21"},{"version":"3.1.3","date":"2026-01-15"},{"version":"3.1.2","date":"2025-09-17"},{"version":"3.1.1","date":"2025-09-15"},{"version":"3.1.0","date":"2024-09-06"},{"version":"3.0.2","date":"2023-12-25"},{"version":"3.0.1","date":"2023-10-14"},{"version":"3.0.0","date":"2023-07-31"},{"version":"0.3.1","date":"2023-03-20"},{"version":"0.3.0","date":"2022-06-22"},{"version":"0.2.7","date":"2022-06-03"},{"version":"0.2.6","date":"2022-05-22"},{"version":"0.2.5","date":"2022-04-19"},{"version":"0.2.4","date":"2022-04-11"},{"version":"0.2.3","date":"2021-10-29"},{"version":"0.2.2","date":"2021-05-05"},{"version":"0.2.1","date":"2021-03-06"},{"version":"0.2.0","date":"2020-09-20"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:ui5-community","name":"UI5 Community","json":"/actors/ui5-community.json"}],"contributors":[{"ref":"actor:flovogt","name":"Florian Vogt","json":"/actors/flovogt.json"},{"ref":"actor:uxkjaer","name":"Jakob Marius Kjaer","json":"/actors/uxkjaer.json"},{"ref":"actor:marianfoo","name":"Marian Zeis","json":"/actors/marianfoo.json"},{"ref":"actor:matz3","name":"Matthias Oßwald","json":"/actors/matz3.json"},{"ref":"actor:randombyte","name":"Merlin Beutlberger","json":"/actors/randombyte.json"},{"ref":"actor:petermuessig","name":"Peter Muessig","json":"/actors/petermuessig.json"},{"ref":"actor:vobu","name":"Volker Buzek","json":"/actors/vobu.json"},{"ref":"actor:d3xter666","name":"Yavor Ivanov","json":"/actors/d3xter666.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}