Skip to content
kitn AI/UI

Empty

kai-empty

A centred empty-state block with a media slot, a title, a description, and a content slot for actions — keeps layouts grounded instead of leaving users with a blank screen.

  • Shadow DOM
  • 2 props
  • Media slot
  • Actions slot
  • Works in any framework
<kai-empty
empty-title="No conversations yet"
description="Start a new chat to see it appear here."
>
<svg slot="media" width="28" height="28" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2">
<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z" />
</svg>
<button>New chat</button>
</kai-empty>
  • empty-title — use this attribute, not title (which is a reserved HTML attribute).
  • Slots live in the light DOM — style them with your page CSS, not shadow styles.
  • Height — the element uses flexbox to vertically centre content; its parent needs an explicit height (e.g. height: 100% or flex: 1).

Omitting the description gives a minimal, uncluttered treatment.

PropertyTypeDefaultNotes
emptyTitle '' Title text. Attribute: `empty-title` (`title` is a global HTML attribute).
description '' Description text.

This element wraps these SolidJS components — reach for them directly when you need finer control than the props expose.

EmptyEmptyHeaderEmptyMediaEmptyTitleEmptyDescriptionEmptyContent