lotusui
A Go design system for desktop and mobile — one codebase, native apps. Web when you want it.
GitHub

Item

A versatile row for media, title, description, and actions.

A straightforward flex container for nearly any content — title, description, and actions. Group with ItemGroup for lists. Use Field when the row is a form control; use Item when it is display content (including multiline SelectOption.Content).

Installation

Use the module import (the default), or own the source: lotusui add vendors the component into your app and lotusui update keeps the copy mergeable — see Registry.

Go
go get github.com/ikaito-com/lotusui

# or vendor the source into your app:
go run github.com/ikaito-com/lotusui/cmd/lotusui add item

Usage

open demo ↗

Variant

Variant selects default (transparent), outline, or muted chrome.

open demo ↗

Size

Shared Size enum — MD default, SM → sm, XS → xs (shadcn's three sizes).

open demo ↗

Icon

ItemMedia with ItemMediaIcon wraps an icon in a muted well.

open demo ↗

Avatar

Pass an Avatar as ItemMediaDefault content.

open demo ↗

Image

ItemMediaImage clips the slot to a rounded square.

open demo ↗

Group

ItemGroup stacks related items; optional ItemSeparator between them.

open demo ↗

From the web

shadcn's render/asChild polymorphism and RTL demo are web-document concerns — Gio uses an explicit Btn slot and the platform's text direction. Dropdown-on-item is composition with DropdownMenu.

API

OptionTypeDescription
ItemProps.VariantItemVariantItemDefault, ItemOutline, ItemMuted.
ItemProps.SizeSizePadding scale; MD default, SM/XS match shadcn sm/xs.
ItemProps.Btn*widget.ClickableNil = static; set for whole-row click/hover.
ItemProps.Header/Media/Content/Actions/Footerlayout.WidgetBuild-time slots; nil omitted.
ItemMedia(th, variant, content)funcLeading well — Default / Icon / Image.
ItemContent / ItemTitle / ItemDescriptionfuncText column helpers.
ItemActions / ItemHeader / ItemFooterfuncTrailing and full-width bands.
ItemGroup / ItemSeparatorfuncStacked list + hairline.

lotusui is a Go design system for native desktop and mobile — and the web when you want it. Docs demos are the real components (WebAssembly) — one gallery app, each Preview an iframe addressed by URL hash.