DryUI 1.4.0

Released April 24, 2026

Highlights

  • New DataGrid sorting API with sortable on any column
  • MarkdownRenderer now handles GFM tables and task lists
  • Pagination ships with keyboard-first navigation

Breaking

  1. Alert no longer accepts the tone prop. Use variant.
  2. --dry-color-accent removed. Map to --dry-color-fill-brand.
  3. Tree.Root's expanded prop is now defaultExpanded.

Fixes

  • AlertDialog focus trap no longer leaks past the close button
  • DatePicker parses YYYY-MM-DD reliably on Safari 17
  • Tooltip respects prefers-reduced-motion when opening

Example

svelte
<Pagination.Root bind:page totalPages={12}>
  <Pagination.Content>...</Pagination.Content>
</Pagination.Root>

See the migration guide for the full diff.

Styled quick start

Copy this entrypoint first. It includes the imports required to get the component on screen.

svelte
<script lang="ts">
  import '@dryui/ui/themes/default.css';
  import '@dryui/ui/themes/dark.css';
  import { MarkdownRenderer } from '@dryui/ui';
</script>

<MarkdownRenderer>Content</MarkdownRenderer>

Import options

Root package

ts
import { MarkdownRenderer } from '@dryui/ui'

Per-component subpath

ts
import { MarkdownRenderer } from '@dryui/ui/markdown-renderer'

API

Props, CSS variables, and the public data attributes you can target when styling.

Prop Type Description Default Required Bindable
content
string
dangerouslyAllowRawHtml
boolean
false