Zeus Downstream Contract
This document defines how downstream packages such as zeus-ui should consume Zeus.
Allowed Imports
Downstream packages may import from:
@zeus-js/zeus— stable user-facing API@zeus-js/zeus/advanced— advanced APIs for tooling/debugging@zeus-js/zeus/capabilities— machine-readable capability manifest@zeus-js/output-wc— Web Component output plugin@zeus-js/output-wc/capabilities— machine-readable WC output capability manifest@zeus-js/web-c@zeus-js/bundler-plugin@zeus-js/bundler-plugin/vite@zeus-js/bundler-plugin/manifest
Disallowed Imports
Downstream packages must not import from:
@zeus-js/*/src/*— internal source files@zeus-js/*/dist/*— internal dist files@zeus-js/runtime-dominternal helper modules (e.g.,template,insert,bindAttr)@zeus-js/signal— internal signal implementation@zeus-js/compiler— compiler internals- any undocumented subpath
Stability
- Zeus is in beta and may make breaking changes without compatibility shims.
@zeus-js/zeus/advancedmay change at any time during beta.- internal runtime/compiler helpers are private.
- capability manifests are additive whenever possible.
Canary Flow
Every merge into Zeus main publishes @zeus-js/*@canary.
Canary Publish Scope
Canary release intentionally publishes all non-private @zeus-js/* packages, including packages ignored by the formal changeset release.
This is intentional because downstream compatibility checks may consume tooling packages such as @zeus-js/vite-plugin, @zeus-js/bundler-plugin, and Web Component output packages.
Downstream projects must run compatibility checks against canary:
- CI installs latest
@zeus-js/*@canary - CI runs
typecheck,build,unit tests, andexamples - Failure indicates Zeus broke downstream compatibility
API Snapshots
Zeus maintains machine-readable API snapshots at docs/api/snapshots/*.api.md.
These snapshots are:
- Generated from published declaration files
- Checked in to git
- Verified by CI on every PR
When a snapshot changes, it must be explicitly committed. This ensures downstream consumers can audit API drift.