kcode-web-libs 0.3.0

Managed plain HTML, CSS, and JavaScript libraries with browser checks and immutable publication
Documentation

kcode-web-libs

kcode-web-libs is a compact synchronous Rust library for creating, opening, completely replacing, validating, and publishing small buildless Web libraries. Alongside UTF-8 HTML, CSS, JavaScript, JSON, and Markdown, a library can retain opaque assets such as fonts and images without base64 conversion. Filename extensions distinguish text from opaque assets; generations need no private asset index. The crate does not impose project-policy file-count or byte-size ceilings.

Each managed library contains Documentation.md, an entry module, a test module, and kcode-web.json:

{
  "name": "example",
  "version": "0.1.0",
  "entry": "index.js",
  "tests": "tests.js"
}

A check materializes exactly the current in-memory source, starts a temporary loopback server, imports the entry in headless Chromium, imports the test module, and awaits its exported runTests() function. The module owns its assertions, test setup, and any test-mode API substitutes.

A successful publication installs the exact checked tree once at:

<publications_root>/module/<name>/v<version>/

Published name/version pairs are immutable. The caller supplies separate managed-source and publication roots and ensures a Chromium-compatible executable is available as chromium on PATH. The crate never stores publication artifacts beneath the source root. The caller also owns Ktool adaptation, production HTTP routing, floating version aliases, application selection, deployment, and rollback.

Each publication rechecks the current in-memory text and asset tree, then writes and synchronizes another independent complete copy with exact asset bytes. Publication does not deduplicate files or replace a previously published exact version.

See Documentation.md for the complete Rust API.