Open
Conversation
…onents Architecture plan for a read-only session browser UI (docx-ui binary): - Back-end: Kestrel Minimal API with CreateSlimBuilder (NativeAOT, zero reflection, source-generated JSON) - Front-end: vanilla JS SPA with Fluent UI Web Components (Microsoft design system) and docx-preview.js for native DOCX rendering - Real-time: SSE (Server-Sent Events) via FileSystemWatcher + polling fallback for live session/patch notifications - 5 REST endpoints: sessions list, detail, DOCX bytes at position, history, and SSE event stream - LRU cache for reconstructed documents (slider scrubbing performance) - CLI integration: `docx-cli server [--port N]` launches docx-ui - No npm/webpack/vite: vendorized JS libs, ES modules, zero build step https://claude.ai/code/session_01AVZcLrhY6w4QujyzEAnLUJ
52c0111 to
9e6706d
Compare
…lla JS SPA Add DocxMcp.Ui project: a lightweight read-only session browser that visualizes document evolution through snapshots and patches. Back-end (Kestrel Minimal API, NativeAOT-safe): - REST endpoints for sessions list, detail, history, DOCX byte export - SSE endpoint with FileSystemWatcher + polling for real-time updates - LRU cache for reconstructed document bytes (slider scrubbing) - SessionBrowserService rebuilds documents at any WAL position - Source-generated JSON serialization (no reflection) Front-end (vanilla JS + Fluent UI Web Components + docx-preview.js): - Session list page with live SSE refresh - Session detail: document tree, DOCX preview, timeline slider, history - Diff view: side-by-side before/after rendering with patch details - Debounced slider input for smooth document navigation - Dark/light theme toggle CLI integration: - `docx-cli server [--port N]` launches the UI binary as subprocess - Forwards DOCX_MCP_SESSIONS_DIR env var to share session storage Core changes: - SessionManager.ReplayPatch: private → internal (for UI rebuild) - InternalsVisibleTo for DocxMcp.Ui https://claude.ai/code/session_01AVZcLrhY6w4QujyzEAnLUJ
9e6706d to
efc7e20
Compare
Co-Authored-By: Claude Opus 4.5 <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.
Architecture plan for a read-only session browser UI (docx-ui binary):
reflection, source-generated JSON)
design system) and docx-preview.js for native DOCX rendering
fallback for live session/patch notifications
history, and SSE event stream
docx-cli server [--port N]launches docx-uihttps://claude.ai/code/session_01AVZcLrhY6w4QujyzEAnLUJ
Closes #18