{"ref":"artifact:mauriciolauffer-openui5-validator","page":"/artifacts/mauriciolauffer-openui5-validator","json":"/artifacts/mauriciolauffer-openui5-validator.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"mauriciolauffer-openui5-validator","name":"openui5-validator","artifact_type":"package","source_available":true,"ecosystem":"ui5","domain":"ui-and-frontend-bridge","origin_ring":"independent","use_as":"dependency","description":{"one_line":"An OpenUI5 library that validates the fields of a view against a JSON schema using Ajv, returning a verdict and a list of failures and leaving reporting to the user to the app.","short":"OpenUI5 library validating view fields against JSON schema","what_it_solves":"Field checks in a UI5 view tend to be written control by control. `openui5/validator/Validator` takes the whole view and a JSON schema instead: `new Validator(view, schema)`, then `validate()` returns the verdict and `getErrors()` lists the failures. Its checks are [Ajv](external:ajv)'s, so every Ajv validation keyword can be used in the schema, and a third `opt` parameter passes initialisation options through to Ajv. The README documents no step that sets a value state or an error message on the controls; reporting back to the user is the application's. It is installed from npm and registered in the host app's manifest."},"links":{"repo":"https://github.com/mauriciolauffer/openui5-validator","npm":"https://www.npmjs.com/package/openui5-validator"},"identity":{"author":"Mauricio Lauffer","license":"MIT"},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://github.com/mauriciolauffer/openui5-validator","title":"mauriciolauffer/openui5-validator — README","checked":"2026-10-19","quote":"Install openui5-validator as an npm module"}]}},"provides":[{"capability":"capability:ui5-data-binding","what_it_does":"Validates the fields of a UI5 view against a JSON schema, taking the view, the schema and Ajv options as its parameters.","sources":[{"url":"https://github.com/mauriciolauffer/openui5-validator","title":"mauriciolauffer/openui5-validator — README","checked":"2026-10-19","quote":"An OpenUI5 library to validate fields."},{"url":"https://github.com/mauriciolauffer/openui5-validator","title":"mauriciolauffer/openui5-validator — README, config","checked":"2026-10-19","quote":"UI5 view which contains the fields to be validated."}]}],"requires":[{"ref":"artifact:openui5-core","for":"The framework the library is built for: it validates the fields of a UI5 view and is loaded in a UI5 controller with `sap.ui.require`.","requirement":"required","basis":"binding","role":"framework","sources":[{"url":"https://github.com/mauriciolauffer/openui5-validator","title":"mauriciolauffer/openui5-validator — README","checked":"2026-10-19","quote":"Import openui5-validator to your UI5 controller using sap.ui.require"}]},{"ref":"external:ajv","for":"The validation engine: the schema is evaluated by Ajv and the library passes its initialisation options through.","requirement":"required","basis":"binding","role":"validation-engine","sources":[{"url":"https://github.com/mauriciolauffer/openui5-validator","title":"mauriciolauffer/openui5-validator — README","checked":"2026-10-19","quote":"This library uses Ajv, a JSON schema validator. All validation keywords available in Ajv can be used."}]}],"maintainers":["actor:mauriciolauffer"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-10-19"},"contributors":["actor:mauriciolauffer"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"poor","evidence":"35 months since release"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"fair","evidence":"pushed 2026-02, 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":"workflows present, no completed run on the default branch"}],"practice":[{"label":"Tests","tier":"good","evidence":"8 test files, npm test"},{"label":"Docs","tier":"fair","evidence":"README 3 KB"},{"label":"Changelog","tier":"good","evidence":"CHANGELOG in the repo"}],"reach":[{"value":1,"unit":"installs/week","note":"More people watching than installing — noticed deliberately rather than pulled in."},{"value":20,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","latest_version":"1.0.0","majors":{"1":{"version":"1.0.0","date":"2023-12-05"},"0.0":{"version":"0.0.1","date":"2017-08-24"},"0.1":{"version":"0.1.0","date":"2017-09-19"}},"license":"MIT","first_release":"2017-08-24","last_release":"2023-12-05","releases":21,"cadence_days":142,"maintainers":1,"repository":"git+https://github.com/mauriciolauffer/openui5-validator.git","repository_directory":null,"peer_cds":null,"dependencies":1,"node_engine":null,"test_script":true,"types":false,"downloads_weekly":1,"downloads_monthly":28,"stars":20,"forks":11,"open_issues":4,"archived":false,"pushed_at":"2026-02-17","license_spdx":"MIT","org_owned":false,"default_branch":"master","created_at":"2017-08-14T10:24:28Z","open_prs":4,"tree_truncated":false,"test_files":8,"workflows":6,"other_ci":false,"readme_bytes":2962,"docs_files":0,"changelog":true,"license_file":true,"dts_files":0,"first_commit":"2017-08-14","last_commit":"2025-04-24","commits":86,"contributors":1,"readme_path":"README.md","readme_sha":"cfc25ce180cc53714492ec4a8b44ebf0977f0c4b","months_since_release":35,"dormant":true,"repo_read":"2026-10-25"},"release_notes":{"license":"MIT","quotable":true,"source":{"kind":"repo","path":"CHANGELOG.md","ref":"master","url":"https://github.com/mauriciolauffer/openui5-validator/blob/master/CHANGELOG.md"},"format":"conventional","releases":[{"version":"1.0.0","date":"2023-12-05","date_source":"heading","heading":"1.0.0 (2023-12-05)","url":"https://github.com/mauriciolauffer/openui5-validator/blob/master/CHANGELOG.md#100-2023-12-05","sections":[{"kind":"breaking","heading":"⚠ BREAKING CHANGES","items":1},{"kind":"feature","heading":"Features","items":1},{"kind":"fix","heading":"Bug Fixes","items":3}],"hash":"dd0e56c10db61d66"}],"versions":[{"version":"1.0.0","date":"2023-12-05"},{"version":"0.1.19","date":"2022-04-26"},{"version":"0.1.18","date":"2021-03-07"},{"version":"0.1.17","date":"2020-10-16"},{"version":"0.1.16","date":"2020-07-24"},{"version":"0.1.15","date":"2020-04-09"},{"version":"0.1.14","date":"2019-12-16"},{"version":"0.1.13","date":"2019-12-12"},{"version":"0.1.12","date":"2019-04-07"},{"version":"0.1.10","date":"2018-11-14"},{"version":"0.1.9","date":"2018-10-30"},{"version":"0.1.8","date":"2018-09-12"},{"version":"0.1.7","date":"2018-09-12"},{"version":"0.1.6","date":"2018-07-26"},{"version":"0.1.5","date":"2018-02-27"},{"version":"0.1.4","date":"2018-02-11"},{"version":"0.1.3","date":"2017-10-06"},{"version":"0.1.1","date":"2017-10-04"},{"version":"0.1.0","date":"2017-09-19"},{"version":"0.0.2","date":"2017-08-25"},{"version":"0.0.1","date":"2017-08-24"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:mauriciolauffer","name":"Mauricio Lauffer","json":"/actors/mauriciolauffer.json"}],"contributors":[{"ref":"actor:mauriciolauffer","name":"Mauricio Lauffer","json":"/actors/mauriciolauffer.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_on_to":{"ref":"artifact:openui5-core","name":"@openui5/sap.ui.core","json":"/artifacts/openui5-core.json"},"add_ons":[],"answered_through_parts":[]}}