Skip to content

feat: add @openuidev/svelte-lang — Svelte 5 renderer [Bounty #302 — $100]#333

Open
CelebrityPunks wants to merge 1 commit intothesysdev:mainfrom
CelebrityPunks:feat/svelte-renderer
Open

feat: add @openuidev/svelte-lang — Svelte 5 renderer [Bounty #302 — $100]#333
CelebrityPunks wants to merge 1 commit intothesysdev:mainfrom
CelebrityPunks:feat/svelte-renderer

Conversation

@CelebrityPunks
Copy link

Summary

Adds @openuidev/svelte-lang — the Svelte 5 equivalent of @openuidev/react-lang. 19 files, 2,405 lines.

What's included

  • Renderer.svelte — main streaming renderer component
  • RenderNode/RenderValue — recursive element rendering
  • defineComponent / createLibrary — component definition API with Zod schemas
  • Context API — getOpenUI(), getTriggerAction() via Svelte getContext/setContext
  • Svelte 5 runes — $state, $derived, $effect for reactive state
  • Parser/prompt — reused from react-lang (framework-agnostic)
  • Form validation — reactive state management

React → Svelte mapping

React Svelte
useOpenUI() getOpenUI()
useState/useMemo $state/$derived
useEffect $effect
createContext setContext/getContext

Closes #302

🤖 Generated with Claude Code

Svelte equivalent of @openuidev/react-lang with streaming renderer,
component definition API, context system, and form validation using
Svelte 5 runes and idiomatic patterns.

Closes thesysdev#302

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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.

Svelte Renderer

2 participants