Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Minimal Chat AI Block for Solid

A narrow chat window with no avatars or bubbles: each turn is a ruled block with your question over the answer, quiet Copy and Regenerate buttons, a Sans or Mono switch, and a one-line underlined field.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Give a writing tool a quiet conversation, with this minimal AI chat for Solid with Ark UI. A hairline frame with a plus mark on each corner holds a narrow window of fixed height for Plainquill, a writing partner. There are no avatars and no bubbles: every turn is a ruled block of a document, with your question as a medium-weight line and the answer as prose that arrives in pieces after a Typing Indicator Text. Under each answer sit two ghost buttons, a Copy Button and Regenerate. A Sans and Mono Toggle Group in the top bar changes the type of every answer, and the foot is one borderless Textarea with an underline and a count of turns. The Shine Button, the only colored control, sends and turns into Stop while an answer arrives. Enter sends and Shift and Enter add a line. It's built from Toggle Group, Copy Button, Textarea, Button and Guides, with CSS only.

FAQ

What stays local, and how do I make it real?

Everything. Three sample requests are answered (a gentler email line, affect and effect, a tighter sentence) from a typed SCRIPT of pieces; anything else lists the samples as chips. Nothing is sent and no model runs, as the line under the field says. To wire it for real, send the request in post, append the pieces of the answer as they stream, and keep the Stop button for the moment it runs.

What does the Sans and Mono switch change?

Only the typeface of the answers, so it works for people who like to read prose in a monospace face and for those who do not. Your questions stay in the normal face. It is a two-item toggle group that always has one item pressed, and it says what it did in the polite status line.

Why ruled blocks instead of bubbles?

A document reads in one column and one direction, so a hairline between turns is enough to tell them apart: the question is the heading of the block and the answer is its body. It also leaves the width for the prose, which is the point of a narrow window. The sender is still spoken to a screen reader ("You." and "Plainquill.") because it is not shown.

What do Stop and Regenerate do?

Stop halts the answer where it is, keeps the pieces that arrived and marks the block "Stopped". Regenerate replays the same answer from its first piece and is off while another answer is arriving. Copy copies what is on screen, so a stopped answer copies only what arrived.

Is it usable with a keyboard and a screen reader?

The log is a focusable region announced as a log. The field has a hidden label and a hint that says Enter sends and Shift and Enter add a line, the send and Stop buttons have hidden names, and one polite line says what changed. The underline of the field turns solid on focus, so the focus is visible without a ring.

How does it look on a phone?

The same single column at the full width of the screen. The window keeps its height and only the log scrolls, the top bar keeps the product and the type switch, and the foot keeps the field, Send and the count.