structyl

Resources

Changelog

All notable changes to structyl packages. We follow semantic versioning.

featurefixbreakingperfdocs

v1.1.0

June 2026
feature

All components now accept and forward native HTML attributes (onClick, onMouseEnter, onFocus, className, style, id, tabIndex, aria-*, data-*, …) to their root element; internal handlers compose and className merges

@structyl/styled

feature

Default theme is now "structyl" — ThemeProvider and ThemeScript default from "slate" to "structyl" (pass defaultTheme="slate" to keep the previous default)

@structyl/themes

feature

Add useColorPreset({ defaultPresetId }) to pre-select an accent preset on first load

@structyl/themes

fix

Accent presets no longer reset when toggling light/dark mode — re-applied after ThemeProvider via a MutationObserver instead of relying on effect order

@structyl/themes

fix

Fix YouTube embeds collapsing to zero height in apps whose Tailwind lacks the aspect-video utility

@structyl/video-player

fix

Settings menu is now responsive and the control bar wraps instead of clipping on narrow players

@structyl/video-player

fix

Fix DataTable example overflowing into the "On this page" panel

docs

fix

Component Prev/Next navigation now follows the sidebar order

docs

feature

Sidebar is now a collapsible drawer on small screens (hamburger toggle)

docs

docs

Add author, repository, and homepage (www.structyl.com) metadata; releases now publish with npm provenance

all packages

v0.5.0

May 2026
feature

Add virtual scrolling with @tanstack/react-virtual for 100k+ row datasets

@structyl/data-table

feature

Column pinning — pin columns left or right with drag-and-drop reorder

@structyl/data-table

feature

Add Combobox component with multi-select and async search support

@structyl/styled

feature

Add DatePicker and DateRangePicker components

@structyl/styled

feature

Add useIntersectionObserver, useResizeObserver, useEventListener hooks

@structyl/hooks

perf

Tree-shake unused variant classes at build time via tailwind-variants v0.3

@structyl/styled

fix

Fix color-scheme flash on initial page load in dark mode

@structyl/themes

docs

Add interactive design tokens page and component status badges

docs

v0.4.0

April 2026
feature

Add Skeleton component with animated pulse and wave variants

@structyl/styled

feature

Add Select component with search, groups, and virtualised options

@structyl/styled

feature

Add Slider, Switch, and Checkbox with indeterminate state

@structyl/styled

feature

Add useDarkMode, useHotkeys, useClickOutside, useCopyToClipboard

@structyl/hooks

breaking

Rename Dialog.Panel → Dialog.Content to align with Radix naming

@structyl/primitives

fix

Fix focus-ring not visible in high-contrast mode

@structyl/styled

fix

Fix row selection state not preserved across paginated views

@structyl/data-table

v0.3.0

March 2026
feature

Add Dialog, Sheet, and Drawer components with focus trapping

@structyl/styled

feature

Add Tabs and Accordion with compound component API

@structyl/styled

feature

Add Tooltip and Popover via @floating-ui/react

@structyl/styled

feature

Initial DataTable release with sorting, filtering, and pagination

@structyl/data-table

feature

Add zinc and rose theme presets in addition to the default slate

@structyl/themes

perf

Lazy-load icons via dynamic import to reduce initial bundle

@structyl/icons

docs

Launch interactive icon browser with search and copy-to-clipboard

docs

v0.2.0

February 2026
feature

Add Badge, Card, Avatar, and Separator components

@structyl/styled

feature

Add Input, Textarea, and Label with form integration

@structyl/styled

feature

Add useDebounce, useThrottle, useLocalStorage, useMediaQuery

@structyl/hooks

feature

Initial ThemeProvider with CSS variable injection and system mode support

@structyl/themes

breaking

Move Button variants from class strings to tailwind-variants API

@structyl/styled

fix

Fix Slot component not merging event handlers correctly

@structyl/core

v0.1.0

January 2026
feature

Initial release with Slot, Primitive, and createContext utilities

@structyl/core

feature

Initial headless primitives: Button, Dialog (partial), Tooltip

@structyl/primitives

feature

Initial styled layer: Button with size/variant/shape axes

@structyl/styled

feature

Initial hooks: useBoolean, useToggle, useCounter, usePrevious, useMount

@structyl/hooks

docs

Launch docs site with getting-started guide and component API reference

docs

For the full git history, see the commit log on GitHub.