Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions apps/website/content/docs/chat/api/parse-tree-store.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# createParseTreeStore()

Factory function that creates a `ParseTreeStore` — a bridge between the `@ngaf/partial-json` parser and Angular's signal-based `Spec` rendering. It materializes the parse tree into a `Spec` signal with structural sharing on each push.
Factory function that creates a `ParseTreeStore` — a bridge between the `@cacheplane/partial-json` parser and Angular's signal-based `Spec` rendering. It materializes the parse tree into a `Spec` signal with structural sharing on each push.

**Import:**

Expand All @@ -17,7 +17,7 @@ function createParseTreeStore(parser: PartialJsonParser): ParseTreeStore

| Parameter | Type | Description |
|-----------|------|-------------|
| `parser` | `PartialJsonParser` | A parser instance from `createPartialJsonParser()` in `@ngaf/partial-json` |
| `parser` | `PartialJsonParser` | A parser instance from `createPartialJsonParser()` in `@cacheplane/partial-json` |

**Returns:** `ParseTreeStore` — must be called within an Angular injection context.

Expand Down Expand Up @@ -50,7 +50,7 @@ interface ElementAccumulationState {
## Usage

```typescript
import { createPartialJsonParser } from '@ngaf/partial-json';
import { createPartialJsonParser } from '@cacheplane/partial-json';
import { createParseTreeStore } from '@ngaf/chat';

const parser = createPartialJsonParser();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,12 @@ npm install @ngaf/chat marked
| `@angular/forms` | `^20.0.0 \|\| ^21.0.0` | Yes |
| `@ngaf/render` | `^0.0.1` | Yes |
| `@ngaf/a2ui` | `^0.0.1` | Yes |
| `@ngaf/partial-json` | `^0.0.1` | Yes |
| `@json-render/core` | `^0.16.0` | Yes |
| `@langchain/core` | `^1.1.33` | Yes |
| `marked` | `^15.0.0 \|\| ^16.0.0` | Yes |

`@cacheplane/partial-json` is installed by `@ngaf/chat` for streaming JSON parsing.

<Callout type="info" title="Markdown rendering">
`marked` parses AI message content into HTML (headings, code blocks, tables, lists). It is a required peer; the library ships a defensive plain-text fallback for resilience, but the rendered output is unusable without `marked` installed.
</Callout>
Expand Down
2 changes: 1 addition & 1 deletion apps/website/content/docs/chat/guides/generative-ui.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ AI message content (token by token)
→ JSON specs via RenderSpecComponent + your view registry
```

The JSON path uses `@ngaf/partial-json` to parse incomplete JSON character-by-character, producing a live `Spec` signal with structural sharing — unchanged elements keep the same object reference so Angular skips re-rendering them.
The JSON path uses `@cacheplane/partial-json` to parse incomplete JSON character-by-character, producing a live `Spec` signal with structural sharing — unchanged elements keep the same object reference so Angular skips re-rendering them.

## Setup

Expand Down
4 changes: 2 additions & 2 deletions apps/website/content/docs/chat/guides/streaming.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Each AI message is processed by a `ContentClassifier` that examines the content

| Trigger | Content Type | What Happens |
|---------|-------------|--------------|
| First non-whitespace is `{` | `json-render` | Parsed as a JSON spec via `@ngaf/partial-json` |
| First non-whitespace is `{` | `json-render` | Parsed as a JSON spec via `@cacheplane/partial-json` |
| Any other text | `markdown` | Rendered as markdown prose |

<Callout type="info" title="Per-message classification">
Expand Down Expand Up @@ -74,7 +74,7 @@ type ContentType = 'undetermined' | 'markdown' | 'json-render' | 'a2ui' | 'mixed
For lower-level control over JSON-to-Spec materialization:

```typescript
import { createPartialJsonParser } from '@ngaf/partial-json';
import { createPartialJsonParser } from '@cacheplane/partial-json';
import { createParseTreeStore } from '@ngaf/chat';

const parser = createPartialJsonParser();
Expand Down
1 change: 0 additions & 1 deletion apps/website/src/app/llms.txt/route.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ function buildLlmsTxt(): string {
'- @ngaf/ag-ui — adapter for any AG-UI-compatible backend (CrewAI, Mastra, Microsoft AF, AG2, Pydantic AI, AWS Strands, CopilotKit runtime)',
'- @ngaf/render — generative UI runtime (Vercel json-render + Google A2UI)',
'- @ngaf/a2ui — A2UI catalog components',
'- @ngaf/partial-json — streaming JSON parser',
'- @ngaf/licensing — license verification client',
'',
'## Install',
Expand Down
4 changes: 2 additions & 2 deletions cockpit/render/shared/streaming-simulator.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: MIT
import { signal, computed } from '@angular/core';
import { createPartialJsonParser, materialize } from '@ngaf/partial-json';
import type { PartialJsonParser, ParseEvent } from '@ngaf/partial-json';
import { createPartialJsonParser, materialize } from '@cacheplane/partial-json';
import type { PartialJsonParser, ParseEvent } from '@cacheplane/partial-json';
import type { Spec } from '@json-render/core';

export class StreamingSimulator {
Expand Down
4 changes: 2 additions & 2 deletions docs/RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Release Process

The seven publishable libraries (`@ngaf/chat`, `@ngaf/langgraph`, `@ngaf/ag-ui`, `@ngaf/render`, `@ngaf/a2ui`, `@ngaf/partial-json`, `@ngaf/licensing`) ship together at a synchronized version via Nx Release. During the `0.0.x` exploratory phase, only patch bumps are used.
The seven publishable libraries (`@ngaf/chat`, `@ngaf/langgraph`, `@ngaf/ag-ui`, `@ngaf/render`, `@ngaf/a2ui`, `@ngaf/licensing`, `@ngaf/telemetry`) ship together at a synchronized version via Nx Release. During the `0.0.x` exploratory phase, only patch bumps are used.

## One-shot release (recommended; second release onward)

Expand Down Expand Up @@ -51,7 +51,7 @@ The very first publish ships the version currently on disk (`0.0.1`) — no vers

```bash
# 1. Build everything
npx nx run-many -t build --projects=chat,langgraph,ag-ui,render,a2ui,partial-json,licensing
npx nx run-many -t build --projects=chat,langgraph,ag-ui,render,a2ui,licensing,telemetry

# 2. Generate the initial CHANGELOG, commit, and tag v0.0.1
npx nx release changelog 0.0.1 --first-release
Expand Down
16 changes: 0 additions & 16 deletions libs/partial-json/package.json

This file was deleted.

37 changes: 0 additions & 37 deletions libs/partial-json/project.json

This file was deleted.

9 changes: 0 additions & 9 deletions libs/partial-json/src/index.ts

This file was deleted.

144 changes: 0 additions & 144 deletions libs/partial-json/src/lib/materialize.spec.ts

This file was deleted.

Loading
Loading