docs: update website for streaming generative UI and remove ChatGenerativeUiComponent#70
Merged
Conversation
…es (#14) Cockpit is an integrated developer reference surface for @cacheplane/stream-resource. It embeds running Angular examples, shows syntax-highlighted source code, renders tutorial documentation, and displays auto-generated API references for each capability. Shared libraries: - @cacheplane/design-tokens: colors, glass, gradient, glow, typography tokens - @cacheplane/ui-react: GlassPanel, GlassButton, Callout, Steps, Tabs, Card, CodeGroup, NavLink - @cacheplane/chat: Angular chat component library (cp-chat, cp-chat-message, cp-chat-input) 14 capability examples (Angular + Python + docs + e2e each): - LangGraph: streaming, persistence, interrupts, memory, durable-execution, subgraphs, time-travel, deployment-runtime - Deep Agents: planning, filesystem, subagents, memory, skills, sandboxes Unified harness: - Capability registry as single source of truth - Serve orchestrator with --capability and --all modes - Per-capability Nx serve targets - CI build job for all Angular apps - LangGraph deployment matrix for all 14 backends - Smoke e2e test suite (28 tests: 14 UI render + 14 send/receive) Light glassmorphism theme matching the website design with frosted glass panels, warm-to-cool gradient backgrounds, and EB Garamond/Inter/JetBrains Mono typography.
- stream-resource.dev → cacheplane.ai - cockpit.stream-resource.dev → cockpit.cacheplane.ai - examples.stream-resource.dev → examples.cacheplane.ai - Updated across all source code, CI workflows, docs, emails, templates - 83 references migrated Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Design spec for auto-detecting and rendering generative UI content (json-render, A2UI, markdown) in the chat component. Includes: - Custom tree-based partial JSON parser library design - Content classifier service with progressive detection - Render lib element-level memoization for streaming efficiency - ParseTreeStore bridge with structural sharing - End-to-end spike plan for validation before implementation Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
State-machine parser that processes JSON one character at a time, emitting node-created/value-updated/node-completed events as the tree grows. Supports strings, numbers, booleans, null, objects, arrays, escape sequences, unicode, nested structures, stable node identities, and JSON Pointer path lookup. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When the spec signal updates (e.g., from streaming tokens), unchanged elements keep the same object reference via structural sharing. The computed() equality check now uses Object.is so downstream computeds (componentClass, visible, resolvedInputs) skip re-evaluation for elements whose reference didn't change. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…tion Bridges @cacheplane/partial-json parser with Angular signals, providing incremental spec materialization with structural sharing and per-element accumulation state tracking (hasType, hasProps, hasChildren, streaming). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Classifies incoming message content as markdown, json-render, or a2ui based on first non-whitespace character. Internally creates a ParseTreeStore for JSON content, computing deltas from full snapshots and exposing spec/elementStates/streaming signals. Type can upgrade (undetermined -> markdown/json-render) but never downgrade. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
blove
added a commit
that referenced
this pull request
Jun 9, 2026
…ativeUiComponent (#70) * feat(cockpit): complete cockpit application with 14 capability examples (#14) Cockpit is an integrated developer reference surface for @cacheplane/stream-resource. It embeds running Angular examples, shows syntax-highlighted source code, renders tutorial documentation, and displays auto-generated API references for each capability. Shared libraries: - @cacheplane/design-tokens: colors, glass, gradient, glow, typography tokens - @cacheplane/ui-react: GlassPanel, GlassButton, Callout, Steps, Tabs, Card, CodeGroup, NavLink - @cacheplane/chat: Angular chat component library (cp-chat, cp-chat-message, cp-chat-input) 14 capability examples (Angular + Python + docs + e2e each): - LangGraph: streaming, persistence, interrupts, memory, durable-execution, subgraphs, time-travel, deployment-runtime - Deep Agents: planning, filesystem, subagents, memory, skills, sandboxes Unified harness: - Capability registry as single source of truth - Serve orchestrator with --capability and --all modes - Per-capability Nx serve targets - CI build job for all Angular apps - LangGraph deployment matrix for all 14 backends - Smoke e2e test suite (28 tests: 14 UI render + 14 send/receive) Light glassmorphism theme matching the website design with frosted glass panels, warm-to-cool gradient backgrounds, and EB Garamond/Inter/JetBrains Mono typography. * feat: migrate all domains from stream-resource.dev to cacheplane.ai - stream-resource.dev → cacheplane.ai - cockpit.stream-resource.dev → cockpit.cacheplane.ai - examples.stream-resource.dev → examples.cacheplane.ai - Updated across all source code, CI workflows, docs, emails, templates - 83 references migrated Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: add streaming generative UI design spec and research Design spec for auto-detecting and rendering generative UI content (json-render, A2UI, markdown) in the chat component. Includes: - Custom tree-based partial JSON parser library design - Content classifier service with progressive detection - Render lib element-level memoization for streaming efficiency - ParseTreeStore bridge with structural sharing - End-to-end spike plan for validation before implementation Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: add streaming generative UI implementation plan * chore: scaffold @cacheplane/partial-json library Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(partial-json): add node types and parser interface Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(partial-json): implement character-by-character streaming parser State-machine parser that processes JSON one character at a time, emitting node-created/value-updated/node-completed events as the tree grows. Supports strings, numbers, booleans, null, objects, arrays, escape sequences, unicode, nested structures, stable node identities, and JSON Pointer path lookup. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(partial-json): add materialization with structural sharing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * perf(render): add element-level memoization via Object.is equality When the spec signal updates (e.g., from streaming tokens), unchanged elements keep the same object reference via structural sharing. The computed() equality check now uses Object.is so downstream computeds (componentClass, visible, resolvedInputs) skip re-evaluation for elements whose reference didn't change. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(chat): add ParseTreeStore for streaming JSON-to-spec materialization Bridges @cacheplane/partial-json parser with Angular signals, providing incremental spec materialization with structural sharing and per-element accumulation state tracking (hasType, hasProps, hasChildren, streaming). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(chat): add ContentClassifier for streaming content type detection Classifies incoming message content as markdown, json-render, or a2ui based on first non-whitespace character. Internally creates a ParseTreeStore for JSON content, computing deltas from full snapshots and exposing spec/elementStates/streaming signals. Type can upgrade (undetermined -> markdown/json-render) but never downgrade. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * feat(chat): integrate content classifier and generative UI rendering Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * fix(chat): add @cacheplane/partial-json peer dependency Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: add streaming generative UI docs update design spec Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: add streaming generative UI docs update implementation plan Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * refactor(chat): remove ChatGenerativeUiComponent from public API * docs(website): register streaming guide and API pages in nav config * docs(chat): remove ChatGenerativeUiComponent from introduction * docs(chat): rewrite generative UI guide for streaming auto-detection * docs(chat): add streaming content classification guide * docs(chat): add ContentClassifier and ParseTreeStore API references * docs(chat): add views and store inputs to ChatComponent docs * docs(chat): remove renderRegistry from configuration and API docs * docs(website): update landing page generative UI references --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ChatGenerativeUiComponentfrom public API — now an internal detail ofChatComponent, not a consumer-facing primitiveviews()input replacesprovideChat({ renderRegistry })ContentClassifier,@cacheplane/partial-json,ParseTreeStore, and how to use them directly for custom integrationscreateContentClassifier()andcreateParseTreeStore()createAngularRegistry→views(),renderRegistry→[views]input across configuration guide, ChatConfig, provideChat, ChatComponent docsTest plan
docs-config.tsnavChatGenerativeUiComponentno longer in public exports