ry-ui Kitchen Sink

Sticky

AttributeValuesDescription
stickybooleanSticks to top of scroll container

Grid

AttributeValuesDescription
cols1-6 | auto-fit | auto-fillNumber of columns or fluid mode
cols-sm1-3Columns at ≤640px
cols-md1-4Columns at 641-1024px
cols-lg2-6Columns at ≥1025px
--ry-grid-minCSS lengthMin column width for auto-fit/auto-fill (default 280px)

Stack

AttributeValuesDescription
gapsm | md | lgVertical spacing

Cluster

AttributeValuesDescription
gapsm | md | lgHorizontal spacing

Card

AttributeValuesDescription
interactivebooleanClickable card with hover lift, focus ring, keyboard support
hrefURLNavigate on click (requires interactive)

Button

AttributeValuesDescription
variantprimary | secondary | outline | ghost | danger | accentButton style
sizesm | md | lgButton size
pressedbooleanPressed/active toggle state
modalmodal-idOpens modal on click
drawerdrawer-idOpens drawer on click

Split

AttributeValuesDescription
resizablebooleanEnable drag-to-resize handle
persiststringlocalStorage key — saves width across reloads
--ry-split-widthCSS lengthSidebar width (default 300px)
--ry-split-min-widthCSS lengthMin width during resize (default 100px)
--ry-split-max-widthCSS lengthMax width during resize (default 80% of container)

Check List

ClassDescription
.ry-check-listGreen checkmark list (CSS-only, no JS)

Accordion

AttributeValuesDescription
titlestringHeader text (on accordion-item)
openbooleanInitially expanded (on accordion-item)

Tabs

AttributeValuesDescription
titlestringTab label (on tab)
activebooleanInitially selected (on tab)

Modal

AttributeValuesDescription
idstringModal identifier
titlestringHeader title
closebooleanCloses modal (on button)

Dropdown

AttributeValuesDescription
first childFirst child element is the trigger

Field

AttributeValuesDescription
labelstringField label text
errorstringError message (hides hint when set)
hintstringHelper text below input

Checkbox

AttributeValuesDescription
checkedbooleanInitially checked
disabledbooleanDisable interaction

Radio

AttributeValuesDescription
namestringGroups radios together
valuestringValue when selected
checkedbooleanInitially selected
disabledbooleanDisable interaction

Badge

AttributeValuesDescription
variantdefault | primary | success | warning | danger | accentBadge style
--ry-badge-colorCSS colorArbitrary background color via style
--ry-badge-textCSS colorArbitrary text color via style

Alert

AttributeValuesDescription
typeinfo | success | warning | dangerAlert style
titlestringAlert heading

Switch

AttributeValuesDescription
namestringForm field name
checkedbooleanInitially checked
disabledbooleanDisable interaction

Slider

AttributeValuesDescription
minnumberMinimum value (default: 0)
maxnumberMaximum value (default: 100)
stepnumberStep increment, 0 for smooth (default: 1)
valuenumberCurrent value (single slider)
start / endnumberRange values (with range attribute)
rangebooleanEnable dual-handle range mode
labeledbooleanShow value labels
tickedbooleanShow tick marks
tooltipbooleanShow value on thumb hover
verticalbooleanVertical orientation
reversedbooleanReverse direction
colorprimary | secondary | success | warning | danger | infoTrack color
sizesm | lgSize variant
disabledbooleanDisable interaction

Knob

AttributeValuesDescription
minnumberMinimum value (default: 0)
maxnumberMaximum value (default: 100)
stepnumberStep increment, 0 for smooth (default: 0)
valuenumberCurrent value
labelstringLabel text below knob
labelsstringComma-separated display labels for discrete values
descriptionstringTooltip text shown on hover
colorprimary | secondary | success | warning | dangerTrack color
sizesm | lgSize variant
disabledbooleanDisable interaction

Number Select

AttributeValuesDescription
minnumberMinimum value (default: 0)
maxnumberMaximum value (default: 100)
stepnumberStep increment (default: 1)
valuenumberCurrent value (default: 0)
arrowsboth | start | end | stacked | noneButton placement (default: both)
iconsplus-minus | chevron | arrowButton icon style (default: plus-minus)
dragx | y | noneDrag direction (default: x, stacked defaults to y)
prefixstringText before value (e.g. "$")
suffixstringText after value (e.g. "°", "%")
editablebooleanAllow direct typing on click
wrapbooleanWrap around min/max boundaries
sizexs | sm | lgSize variant
disabledbooleanDisable interaction

Color Picker

AttributeValuesDescription
valuecolor stringInitial color (hex, rgb, hsl)
formathex | rgb | hslOutput format (default: hex)
inlinebooleanAlways show picker (no dropdown)
opacitybooleanEnable alpha channel slider
swatchesstringPreset colors separated by semicolons
disabledbooleanDisable interaction

Color Input

AttributeValuesDescription
valuecolor stringInitial color (hex, rgb, hsl)
formathex | rgb | hslOutput format (default: hex)
opacitybooleanEnable alpha channel slider
placeholderstringPlaceholder text for input
disabledbooleanDisable interaction

Gradient Picker

AttributeValuesDescription
valueCSS gradient stringInitial gradient value
disabledbooleanDisable interaction

Toggle Button

AttributeValuesDescription
namestringGroups buttons (same name = only one pressed)
valuestringValue when selected
pressedbooleanCurrently pressed
disabledbooleanDisable interaction
sizesm | md | lgButton size

Tooltip

AttributeValuesDescription
contentstringTooltip text
positiontop | bottom | left | rightTooltip position

Drawer

AttributeValuesDescription
idstringDrawer identifier
sideleft | right | bottomSlide direction

Toast

MethodDescription
RyToast.success(msg)Show success toast
RyToast.error(msg)Show error toast
RyToast.warning(msg)Show warning toast
RyToast.info(msg)Show info toast

Select

AttributeValuesDescription
placeholderstringPlaceholder text
namestringForm field name
disabledbooleanDisable select (on option)
multiplebooleanEnable multi-select with tags
clearablebooleanShow clear button (multi)
max-selectionsnumberMax selections (multi)

Multi-Select

Combobox

AttributeValuesDescription
placeholderstringPlaceholder text for input
namestringForm field name
valuestringCurrently selected value
disabledbooleanDisable combobox

Code

AttributeValuesDescription
languagejs | css | html | jsonSyntax highlighting
titlestringHeader title
line-numbersbooleanShow line numbers

Note: Use <ry-code> with prefix to avoid conflict with native <code> tag.

Table

AttributeValuesDescription
data-borderedbooleanAdd borders to all cells
data-stripedbooleanAlternate row backgrounds

Tree

AttributeValuesDescription
labelstringItem label (on tree-item)
openbooleanInitially expanded folder (on tree-item with children)
selectedbooleanInitially selected file (on leaf tree-item)
sortablebooleanEnable drag-and-drop rearranging (on tree)
no-animatebooleanDisable expand/collapse animation (on tree)
--ry-tree-durationCSS timeAnimation duration (default: 150ms)

Icon

AttributeValuesDescription
nameclose | check | chevron-* | copy | sun | moon | info | warning | error | success | search | menu | plus | minus | settings | user | heart | star | trash | edit | external-link | download | uploadIcon name
sizenumberSize in pixels (default: 24)
labelstringAccessible label

Tag

AttributeValuesDescription
variantdefault | primary | success | warning | dangerColor variant
sizesm | md | lgSize
removablebooleanShow close button
data-valuestringValue included in ry:remove event

Tag Input

AttributeValuesDescription
placeholderstringInput placeholder
delimiterstringDelimiter character (default ",")
max-tagsnumberMax number of tags
valuestringInitial comma-separated values
namestringForm field name

Hero

AttributeValuesDescription
aligncenter | leftText alignment
sizesm | md | lgPadding size
full-bleedbooleanRemove max-width

Stat

AttributeValuesDescription
trendup | downTrend arrow direction
sizesm | md | lgValue text size
alignleft | centerAlignment

Feature Grid

AttributeValuesDescription
cols (grid)2 | 3 | 4Number of columns
icon (feature)icon nameIcon from registry
align (feature)left | centerContent alignment

Pricing

AttributeValuesDescription
featuredbooleanHighlight this card

Testimonial

AttributeValuesDescription
stars1–5Star rating display
avatarimage URLAvatar photo
nametextPerson's name
roletextTitle / company

Carousel

AttributeValuesDescription
arrowsbooleanShow prev/next arrows
dotsbooleanShow dot indicators
loopbooleanLoop back to start
autoplaybooleanAuto-advance slides
intervalnumberAutoplay interval in ms (default 5000)
pause-on-hoverbooleanPause autoplay on hover

ry-ui • Framework-agnostic Light DOM components