Headless React components, powered by an LLM.
Ghost completion, AI suggestions, rewrite primitives. Provider-agnostic. Mobile-first. You bring the styling — we ship the behavior + the plumbing.
pnpm add @extedcoud/smart-componentsCompose
AI ghost completion
Type Hello or Thanks — ghost text appears after a short debounce. Press → to accept.
useSmartState — typed AI state in one line
useState with an `ai.generate()` action. Shape is read from your initial value, so the model is constrained to return matching JSON — no schemas, no parsers, no boilerplate.
What you get
Ghost completion
Copilot-style inline suggestions for inputs & textareas. Debounce, abort, LRU cache built in.
AI suggestions
Headless combobox with full ARIA + keyboard + pointer support. Bring your own item renderer.
Rewrite primitives
Render-prop rewrite component + ready-made paraphrase box & area. Streaming first paint.
Provider-agnostic
Capability-based SmartClient interface. OpenAI, Anthropic, your proxy, or a mock — adapters are 4 lines.
Mobile-first
IME composition gating, pointer events, imperative accept(), 44px touch targets. Tested on iOS + Android.
Headless
Minimal default DOM. You style everything. No theme system, no design tokens — bring your own.
Ready to wire it in?
One provider, one component, one adapter. Five minutes start to finish.
Read the guide