{"ref":"artifact:akatuoro-vite-plugin-cds","page":"/artifacts/akatuoro-vite-plugin-cds","json":"/artifacts/akatuoro-vite-plugin-cds.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"akatuoro-vite-plugin-cds","name":"vite-plugin-cds","artifact_type":"cds-plugin","ecosystem":"cap","domain":"developer-experience","origin_ring":"independent","description":{"one_line":"A CAP plugin that serves a Vite app from the app folder through cds watch, makes .cds files importable into the frontend build, and can polyfill enough of Node to run @sap/cds in the browser.","short":"Serves a Vite app through cds watch and imports .cds files","what_it_solves":"Installed as a dev dependency of a CAP project, it puts a Vite frontend under the same command as the service: a vite.config.js beside an index.html in app/ and cds watch serves that page through Vite. Its cds() plugin makes a .cds model file importable from frontend code, so a model reaches the browser as a module rather than through a build step written by hand. node() and cap() go further and polyfill enough of Node for [@sap/cds](artifact:sap-cds) to run in the page itself: the README compiles a CSN model in the browser, deploys it to [@cap-js/sqlite](artifact:cap-js-sqlite) over [SQLite](external:sqlite) built to WebAssembly, and serves OData from an Express app the page calls directly. The README names the limitation of that browser runtime, that cds.context is not unique per request or transaction, and points at its own note on asynchronous context tracking."},"links":{"npm":"https://www.npmjs.com/package/vite-plugin-cds","repo":"https://github.com/Akatuoro/vite-plugin-cds"},"identity":{"author":"Johannes Vogt","license":"MIT"},"compat":{"runtimes":["node"],"cds_range":">=9"},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, Vite apps with cds watch","checked":"2026-09-19","quote":"Install vite and this plugin as development dependencies in your CAP project.\n\n```sh\nnpm install --save-dev vite vite-plugin-cds\n```"}]}},"provides":[{"capability":"capability:local-development","what_it_does":"Brings a Vite frontend under cds watch, so the service and the app in front of it come up on one command and the page is served by Vite rather than by a second process started beside it.","sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, Vite apps with cds watch","checked":"2026-09-19","quote":"The index.html is now served automatically via vite when you run:"},{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, Vite apps with cds watch","checked":"2026-09-19","quote":"Add a `vite.config.js` to any frontend application in the `app/` folder of your CAP project."}]}],"requires":[{"ref":"artifact:sap-cds","for":"the CAP runtime it plugs into, named by the README as its peer dependency","requirement":"required","sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, prerequisite","checked":"2026-09-19","quote":"This library has a peer dependency to [@sap/cds](https://www.npmjs.com/package/@sap/cds)."}]},{"ref":"external:vite","for":"the build tool and development server it is a plugin for, installed beside it","requirement":"required","sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, installation","checked":"2026-09-19","quote":"npm install --save-dev vite vite-plugin-cds"}]},{"ref":"artifact:cap-js-sqlite","for":"the database the cds runtime deploys to when the model is compiled and served in the browser","requirement":"conditional","condition":"the cds runtime is run in the browser through the node() and cap() plugins","sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, cds in the browser","checked":"2026-09-19","quote":"npm install --save-dev vite vite-plugin-cds @sap/cds @cap-js/sqlite @sqlite.org/sqlite-wasm express"}]},{"ref":"external:sqlite","for":"the SQLite build that browser runtime sits on, which the README's dependency list names as @sqlite.org/sqlite-wasm","requirement":"conditional","condition":"the cds runtime is run in the browser through the node() and cap() plugins","sources":[{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, cds in the browser","checked":"2026-09-19","quote":"npm install --save-dev vite vite-plugin-cds @sap/cds @cap-js/sqlite @sqlite.org/sqlite-wasm express"},{"url":"https://raw.githubusercontent.com/Akatuoro/vite-plugin-cds/main/README.md","title":"vite-plugin-cds — README, cds in the browser","checked":"2026-09-19","quote":"await sqlite.initialized // wait for sqlite3-wasm to be ready (part of polyfill)"}]}],"maintainers":["actor:akatuoro"],"provenance":{"discovered_via":[{"source":"source:npm","channel":"npm:cds-plugin"},{"source":"source:npm","channel":"npm:cds-"}],"first_seen":"2026-09-08"},"drafted_with_ai":true,"contributors":["actor:akatuoro","actor:chgeo"]},"effective_normative_relations":[{"instrument":"instrument:sap-developer-license-3-2-cap","relation":"use-constrained-by","sections":["1","2","3"],"applies_when":"A cds-plugin is used with SAP CAP materials, or an artifact is explicitly identified as a CAP plugin or application.","note":"This is inherited applicability, not a licence verdict about the artifact itself. Review the agreement for the actual materials and use; an explicit artifact relationship to another revision takes precedence.","scope":{"kind":"artifact"},"sources":[{"url":"https://cap.cloud.sap/resources/license/developer-license-3_2_CAP.txt","title":"SAP Developer License Agreement 3.2 CAP","checked":"2026-09-16","quote":"documentation, plug-ins, templates, scripts and sample code, libraries, software development kits"}],"inherited_from":"cap-plugins-and-applications","relevant_capabilities":["agent-systems-access","async-processing","data-import-export","database-connectors","deployment","destinations","llm-integration","mcp-servers","plugin-authoring","replication","retrieval-augmented-generation","rfc-connectivity"]}],"readings":{"liveness":[{"label":"Maintenance","tier":"good","evidence":"2 months since release"},{"label":"Continuity","tier":"fair","evidence":"2 contributors, 2 publishers"},{"label":"Repository","tier":"good","evidence":"pushed 2026-09, not archived"}],"compatibility":[{"label":"Declared for","tier":"good","evidence":">=9 — includes cds 10 and 9"},{"label":"Survived majors","tier":"good","evidence":"released before and after @sap/cds 10"},{"label":"Maintainer's CI","tier":"good","evidence":"Node.js Package green, 2026-07-24"}],"practice":[{"label":"Tests","tier":"good","evidence":"93 test files, npm test"},{"label":"Docs","tier":"fair","evidence":"README 3 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":29,"unit":"installs/week"},{"value":2,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-24","latest_version":"0.3.6","majors":{"0.1":{"version":"0.1.0","date":"2025-10-18"},"0.2":{"version":"0.2.0","date":"2026-04-13"},"0.3":{"version":"0.3.0","date":"2026-04-28"}},"license":"MIT","first_release":"2025-10-18","last_release":"2026-08-20","releases":19,"cadence_days":15,"maintainers":2,"repository":"git+https://github.com/Akatuoro/vite-plugin-cds.git","repository_directory":null,"peer_cds":">=9","dependencies":0,"node_engine":null,"test_script":true,"types":false,"downloads_weekly":29,"downloads_monthly":185,"stars":2,"forks":0,"open_issues":0,"archived":false,"pushed_at":"2026-09-19","license_spdx":"MIT","org_owned":false,"default_branch":"main","created_at":"2025-10-18T20:07:12Z","open_prs":0,"tree_truncated":false,"test_files":93,"workflows":1,"other_ci":false,"readme_bytes":3052,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2025-10-18","last_commit":"2026-08-20","commits":134,"contributors":2,"ci_status":"success","ci_run_at":"2026-07-24","ci_workflow":"Node.js Package","ci_event":"workflow_dispatch","readme_path":"README.md","readme_sha":"3aa84d97586cad674f817e394357d92362e43612","months_since_release":2,"dormant":false,"repo_read":"2026-10-24"},"release_notes":{"license":"MIT","quotable":true,"source":{"kind":"github-releases","url":"https://github.com/Akatuoro/vite-plugin-cds/releases"},"format":"github-releases","releases":[{"version":"0.3.6","date":"2026-08-20","date_source":"github","heading":"v0.3.6","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.6","sections":[],"hash":"33c78c344170435a"},{"version":"0.3.5","date":"2026-07-24","date_source":"github","heading":"v0.3.5","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.5","sections":[],"hash":"7815b5ebb9ee426d"},{"version":"0.3.4","date":"2026-06-23","date_source":"github","heading":"v0.3.4","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.4","sections":[],"hash":"405e11e7a44bea2f"},{"version":"0.3.3","date":"2026-05-05","date_source":"github","heading":"v0.3.3","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.3","sections":[],"hash":"5be5e62dca38bdef"},{"version":"0.3.2","date":"2026-05-05","date_source":"github","heading":"v0.3.2","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.2","sections":[],"hash":"e8c0dbd8afb14c00"},{"version":"0.3.1","date":"2026-05-05","date_source":"github","heading":"v0.3.1","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.1","sections":[],"hash":"90a79bc3c7cf60e3"},{"version":"0.3.0","date":"2026-04-28","date_source":"github","heading":"v0.3.0","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.3.0","sections":[],"hash":"d1df13ff9c9910b0"},{"version":"0.2.0","date":"2026-04-13","date_source":"github","heading":"v0.2.0","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.2.0","sections":[],"hash":"2ee510048caf1e58"},{"version":"0.1.10","date":"2026-03-01","date_source":"github","heading":"v0.1.10","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.10","sections":[],"hash":"cd2c56a78f034f62"},{"version":"0.1.9","date":"2026-02-23","date_source":"github","heading":"v0.1.9","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.9","sections":[],"hash":"e3b0c44298fc1c14"},{"version":"0.1.8","date":"2026-02-21","date_source":"github","heading":"v0.1.8","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.8","sections":[],"hash":"d432b81a1815fe30"},{"version":"0.1.7","date":"2026-02-04","date_source":"github","heading":"v0.1.7","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.7","sections":[],"hash":"9f36aff5585856cb"},{"version":"0.1.6","date":"2026-02-01","date_source":"github","heading":"v0.1.6","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.6","sections":[],"hash":"e159c7f3e5b8111d"},{"version":"0.1.5","date":"2026-01-19","date_source":"github","heading":"v0.1.5","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.5","sections":[],"hash":"e3b0c44298fc1c14"},{"version":"0.1.4","date":"2026-01-19","date_source":"github","heading":"v0.1.4","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.4","sections":[],"hash":"bc8b63d95a7860e1"},{"version":"0.1.3","date":"2026-01-15","date_source":"github","heading":"v0.1.3","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.3","sections":[],"hash":"9df69bca7af7dfac"},{"version":"0.1.2","date":"2025-12-29","date_source":"github","heading":"v0.1.2","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.2","sections":[],"hash":"b3edcf8f4b7b9c69"},{"version":"0.1.1","date":"2025-11-10","date_source":"github","heading":"v0.1.1","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.1","sections":[],"hash":"33e23237e353a04d"},{"version":"0.1.0","date":"2025-10-18","date_source":"github","heading":"v0.1.0","url":"https://github.com/Akatuoro/vite-plugin-cds/releases/tag/v0.1.0","sections":[],"hash":"e3b0c44298fc1c14"}],"versions":[{"version":"0.3.6","date":"2026-08-20"},{"version":"0.3.5","date":"2026-07-24"},{"version":"0.3.4","date":"2026-06-23"},{"version":"0.3.3","date":"2026-05-05"},{"version":"0.3.2","date":"2026-05-05"},{"version":"0.3.1","date":"2026-05-05"},{"version":"0.3.0","date":"2026-04-28"},{"version":"0.2.0","date":"2026-04-13"},{"version":"0.1.10","date":"2026-03-01"},{"version":"0.1.9","date":"2026-02-23"},{"version":"0.1.8","date":"2026-02-21"},{"version":"0.1.7","date":"2026-02-04"},{"version":"0.1.6","date":"2026-02-01"},{"version":"0.1.5","date":"2026-01-19"},{"version":"0.1.4","date":"2026-01-19"},{"version":"0.1.3","date":"2026-01-15"},{"version":"0.1.2","date":"2025-12-29"},{"version":"0.1.1","date":"2025-11-10"},{"version":"0.1.0","date":"2025-10-18"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:akatuoro","name":"Johannes Vogt","json":"/actors/akatuoro.json"}],"contributors":[{"ref":"actor:chgeo","name":"Christian Georgi","json":"/actors/chgeo.json"},{"ref":"actor:akatuoro","name":"Johannes Vogt","json":"/actors/akatuoro.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}