Execution and release state follow the
Project Workflow.
Source of truth for forward product planning.
Published package line:v0.41.0-alpha.19.
Active execution target:v0.41.0-alpha.19.
Current implementation state: five-package convergence is published; alpha.17 closed the first audit remediation and alpha.18 completed the second audit sweep (ADR-0117).
Maturity stage: alpha; the abandoned beta naming is retired.
OpenElement = Web Components-native fullstack application framework
current proven scope = static-first applications with fullstack output paths
component contract = standard Custom Elements
authoring = JSX + Basic Element
rendering = DSD/shadow default + explicit light DOM
interactivity = selective element upgrade
official build path = Vite + Nitro
OpenElement makes Custom Elements the durable application contract rather than
a renderer integration or a leaf-widget format. @openelement/element supports
standalone element authors; @openelement/app and
@openelement/adapter-vite add routes, rendering, islands, static generation
and deployable output around the same contract.
The current product graph has five packages:
| Package | Product role |
|---|---|
@openelement/element |
Custom Elements, JSX, DSD, hydration and signals |
@openelement/app |
Pages, routing, islands and request/render semantics |
@openelement/adapter-vite |
Vite, content, static builds and Nitro output |
@openelement/create |
Installed starter and zero-context entrypoint |
@openelement/ui |
Optional, proven general-purpose primitives |
core, signal, router, protocol, content and ssg are retired public
packages. Their historical names remain in ADRs and release evidence only.
The goal is not to outgrow every general-purpose framework. The goal is to make OpenElement the first choice when a team wants Web Components to define the whole application architecture: component authorship, SSR, DSD, forms, routing, selective upgrades and deployment.
The claim is earned through evidence, not feature count:
- WC authoring — ordinary authors learn the small supported surface:
defineElement,definePage,defineAppandbuildApp. - WC SSR correctness — builds explain whether a component can use DSD, light DOM or client-only rendering, and why.
- Interop — native, Lit, FAST, Stencil and representative third-party elements are continuously tested across supported browsers.
- Continuity — the same page model works from static HTML through request-time rendering and selective upgrade.
- Application interaction — standard
Request,Response,FormDataand Custom Element semantics support load, action, errors and redirects. - Portable operations — packed artifacts build and deploy predictably to Node and Workers with actionable diagnostics.
Astro, Fresh and other static-first frameworks set a high application baseline; Lit, FAST and Stencil set a high component baseline; Enhance is the closest HTML-first Custom Elements fullstack comparison. OpenElement differentiates by making the standard Custom Element contract span both layers. See the official Astro integrations, Fresh islands, Lit SSR, FAST SSR, Stencil output targets, Enhance and open-wc testing.
| Version | Theme | Required evidence |
|---|---|---|
0.41.0-alpha.10 |
Five-package convergence | Exact published CLI lifecycle; browser gates; npm, tag, GitHub Release, docs and evidence agree |
0.41.0-alpha.11 |
Audit remediation | Runtime regressions, Workers, artifacts, protocol seam, coverage, and two-phase release truth |
0.41.0-alpha.14 |
Release recovery | Exact-version starter, published consumers and honest two-stage evidence |
0.41.0-alpha.15 |
Adoption and interface proof | #390, current CI runtime, cross-platform consumers and stable-interface rehearsal |
0.41.0-alpha.16 |
Correctness reset | ADR-0116 audit findings: hydration/props correctness, island chunk matching, npm latest policy, #460, drift clearance |
0.41.0-alpha.17 |
Remediation completion | Real-browser test credibility, convergence hygiene, release-tooling evidence fixes, #390 pilot launch |
0.41.0-alpha.18 |
Second audit sweep | ADR-0117: sibling-path closures, evidence honesty, reflect-prop correctness, redundancy cleanup |
0.41.0 |
Core interface freeze | Five-package graph plus defineElement, definePage, defineApp and buildApp require no further architecture-level breaking change |
0.42.0 |
WC Application Loop | One route-to-interaction loop: load, DSD render, progressive form, action, error/redirect and revalidation; works without JavaScript |
0.43.0 |
Universal WC SSR | CEM/admission information, DSD/light/client-only classification, native/Lit/FAST/Stencil corpus and hydration-mismatch diagnostics |
0.44.0 |
Production Runtime | Node and Workers behavior, stream/abort/timeout, cache/ISR/SWR, deploy manifests, version-skew handling and recovery proof |
0.45.0 |
WC Ecosystem Platform | Component and application starters, CEM/open-wc workflows, migration guides, compatibility registry and external adopters |
0.46.0 |
v1 Product Freeze | Remove unused exports, decide the UI commitment, freeze errors, browser/runtime support and upgrade policy |
1.0.0-rc.x |
Stability only | No new capability; compatibility, reliability and documentation fixes only |
1.0.0 |
Stable five-package product | External production users prove that the core interfaces are stable |
- No new package is created by default.
- A public adapter seam requires two real adapters or an ADR backed by runtime isolation, dependency-cycle, artifact-size or independent-consumer evidence.
- Auth, OAuth, ORM, databases and storage remain recipes. OpenElement owns the application contract, not those service products.
- Session and cache may become App behavior only when the Application Loop or Production Runtime has a proven semantic need; they do not get speculative packages.
@openelement/uimust have two non-site consumers by v0.46 or shrink to proven primitives outside the v1 compatibility promise.- A feature is complete only when starter, docs, packed artifacts, dogfood and an external adopter can use its public interface.
0.41.0-alpha.19 is the published package line. npm beta.1 through beta.3 are
immutable partial artifacts and remain withdrawn from the active release story.
The planned beta name was cancelled so the version label honestly reflects
that breaking architecture and interface changes are still allowed.
Alpha.17 completed the first audit remediation (test credibility, convergence,
release tooling). Alpha.18 completed the second audit sweep (ADR-0117):
sibling-path closures, evidence honesty, reflect-prop correctness and
redundancy cleanup. Stable 0.41.0 requires a separate approved plan after
those efforts and the #390 pilot uncover no further architecture,
public-interface or adoption work.
Older version plans, package graphs and product doctrines are preserved in
docs/release/, docs/adr/ and
docs/audit/. They describe their original decisions and are not
current consumer documentation.