ViteHub is still experimental. Expect bugs and breaking changes.
UI
Build AI chat, Agent inspection, diff, and file-tree interfaces with Vue and Nuxt.
@vite-hub/ui is the interface layer for ViteHub applications. It combines AI SDK message contracts, Nuxt UI styling, reusable Vue behavior, and Pierre's code views without replacing any of those foundations.
Layers
| Layer | Owns |
|---|---|
| AI SDK | UIMessage, ChatStatus, streaming state, tool parts, and transport helpers. |
| Headless Vue | Scroll intent, live-edge following, prepend preservation, and message jumps. |
| Nuxt UI | Theme tokens and established chat, prompt, reasoning, tool, button, and badge components. |
| ViteHub UI | Part dispatch, defaults, Markdown presentation, attachments, Agent inspection, and code views. |
| Pierre | Diff rendering and path-first file trees. |
The package does not own chat transport. Use useChat() from @ai-sdk/vue or the ViteHub wrapper from vite-hub/agent/vue, then pass its reactive values to the UI.