Package Exports
- @openelement/core
- @openelement/core/context
- @openelement/core/csr
- @openelement/core/dsd-hydration
- @openelement/core/errors
- @openelement/core/html-escape
- @openelement/core/hydrate
- @openelement/core/island-transform
- @openelement/core/isr
- @openelement/core/isr-runtime
- @openelement/core/jsx-dev-runtime
- @openelement/core/jsx-runtime
- @openelement/core/logger
- @openelement/core/path-utils
- @openelement/core/prop
- @openelement/core/render-dsd-stream
- @openelement/core/runtime
- @openelement/core/signal-context
- @openelement/core/static
- @openelement/core/style-sheet
- @openelement/core/tag-utils
- @openelement/core/write-json
Readme
@openelement/core
Advanced openElement runtime kernel.
Most users should start from @openelement/app, @openelement/element, or
@openelement/ui. @openelement/core owns low-level primitives used by those
products:
- JSX and VNode runtime primitives.
- DSD rendering through
renderDsd()andrenderDsdStream(). - Static props, event hydration, island metadata, and SSR context helpers.
- Unified errors, signal-like utilities, and DOM rendering helpers.
- StyleSheet (SSR-safe CSSStyleSheet abstraction).
The OpenElement base class is now authored from @openelement/element.
This package does not contain Vite, CLI, or build orchestration logic.
Hydration Subpaths
@openelement/core/hydrate is a low-level building-block subpath for DSD
marker, event, binding, and HydrationScope hydration. It is not a complete
standalone third-party framework hydration runtime. Use:
@openelement/appfor routes, pages, islands, and SPA bootstrap.@openelement/elementfor Basic Element component authoring.@openelement/core/staticfor SSR/DSD rendering without DOM hydration.@openelement/core/hydratefor DSD marker/event/binding hydration helpers.@openelement/core/csrfor full client-side DOM rendering primitives.
The active contract is documented in
docs/current/HYDRATION_CONTRACT.md.
Install
npm install @openelement/coreLow-Level Component Authoring
For component authoring with OpenElement, ErrorBoundary, prop system,
and defineElement helper, use @openelement/element:
npm install @openelement/elementLicense
MIT