Skip to content

Document the Deno and Web Components platform direction - #32

Merged
hnordt merged 2 commits into
mainfrom
codex/deno-web-components-design
Aug 2, 2026
Merged

Document the Deno and Web Components platform direction#32
hnordt merged 2 commits into
mainfrom
codex/deno-web-components-design

Conversation

@hnordt

@hnordt hnordt commented Aug 2, 2026

Copy link
Copy Markdown
Owner

Summary

  • add design record 0010 proposing Deno as the primary runtime and workspace toolchain
  • define Web Components as the public UI boundary and keep Preact limited to rendering
  • document explicit state ownership, Declarative Shadow DOM constraints, package compatibility, security, and migration evidence
  • link the proposal from design record 0003 and add it to the design-record index

Why

The package-oriented monorepo direction exposed that Svelte components are easiest to reuse from Svelte applications. The proposal moves public UI contracts toward browser standards so they can be consumed from plain HTML, TypeScript, and other frameworks.

It also records why Deno is preferred over the current SvelteKit, Node.js, and npm development stack: Web Platform alignment, default-deny permissions, workspaces, and integrated TypeScript, formatting, linting, testing, and task tooling.

Impact

This is a Draft design record. It does not change runtime behavior or claim that the Deno and Web Components migration is implemented. README.md, AGENTS.md, and CONTRIBUTING.md remain canonical until the proposal is approved and corresponding implementation work is verified.

The change is classified as:

  • Kernel, because the runtime migration affects public SDK contracts and must preserve SQLite, transaction, replay, recovery, and compatibility invariants
  • Experience, because it changes the intended frontend, application runtime, package, and developer-tooling boundaries

AI involvement

  • Tool: OpenAI Codex
  • Usage: planning and documentation implementation
  • Tests written by AI: none
  • Overall usage level: automated

AI involvement does not replace the experienced human maintainer review required for a Kernel-classified decision.

Verification

  • npm run lint
  • git diff --check
  • commit hook formatting through Prettier

Application tests were not run because this change is documentation-only.

Uncertainty and risks

  • component composition remains intentionally unresolved pending representative implementation evidence
  • Declarative Shadow DOM does not itself define hydration, event attachment, or state reconciliation
  • the exact npm artifact and publication pipeline remains to be selected and tested from produced tarballs
  • the Deno SQLite implementation must prove existing transaction, authorizer, failure, recovery, and compatibility behavior before Node.js is removed
  • Deno permissions are process-level controls and do not replace Hyperkernel actor, capability, authorization, or extension-isolation contracts
  • npm ci reported three low-severity findings in the current dependency graph; this documentation change does not alter those dependencies

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4b00141b3d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +343 to +347
6. Verify npm artifacts from clean consumer projects, then remove obsolete npm,
Node.js, Svelte, SvelteKit, Vite, Prettier, ESLint, and adapter
configuration.
7. Update `README.md`, `AGENTS.md`, `CONTRIBUTING.md`, examples, CI, and setup
instructions only when the corresponding migration step is true.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update setup guidance alongside tooling removal

In this ordered migration, step 6 removes the npm/Node/Svelte tooling before step 7 updates CI, setup instructions, and the canonical guidance. The current repository still defines npm commands and requires the SvelteKit/Node/npm stack, so the step-6 state would neither provide the promised runnable and testable path nor permit the migrated implementation under the applicable rules. Move the corresponding CI, documentation, and migration-policy updates into the same step as each tooling change.

AGENTS.md reference: AGENTS.md:L174-L185

Useful? React with 👍 / 👎.

Comment on lines +32 to +34
This record proposes a replacement for the Svelte and SvelteKit decisions in
[0003: Web-platform-first frontend](0003-web-platform-first-frontend.md). It
does not claim that the replacement has already been implemented. The current

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Define a record-level supersession path for 0003

Under the lifecycle in docs/design/README.md, a replacement moves the previous record to Legacy, but this proposal replaces only the Svelte and SvelteKit portions of 0003. That record also owns independent Web Platform, headless-UI, accessibility, and Zod decisions that 0009 neither supersedes nor restates, so marking 0003 Legacy would retire active decisions while leaving it Development would preserve contracts that directly contradict 0009. Make this a complete replacement that carries forward the unaffected decisions, or split the superseded decisions and specify the exact status transition before advancement.

Useful? React with 👍 / 👎.

@hnordt
hnordt temporarily deployed to codex/deno-web-components-design - hyperkernel PR #32 August 2, 2026 18:39 — with Render Destroyed
@hnordt
hnordt merged commit 0df3ec8 into main Aug 2, 2026
4 checks passed
@hnordt
hnordt deleted the codex/deno-web-components-design branch August 2, 2026 23:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant