Build AI interfaces that mean it.
32 components. 7 themes. Zero dependencies.
Every surface a canvas for ASCII texture.
Capabilities
Real-time Bayer, Floyd-Steinberg, and Atkinson dithering on images, video, and backgrounds.
14 purpose-built components for chat interfaces, streaming, reasoning traces, and tool calls.
Like shadcn — CLI copies source into your project. You own every line.
Scanlines, phosphor glow, flicker, terminal themes. Not decoration — identity.
Developer Experience
Import the component. Wire up the hook. Done.
1import { ChatBubble, useChat } from '@skeehn/react';23export function Chat() {4 const { messages, input, setInput, append } = useChat({5 api: '/api/chat',6 });78 return (9 <div>10 {messages.map(m => (11 <ChatBubble key={m.id} role={m.role}>12 {m.content}13 </ChatBubble>14 ))}15 </div>16 );17}