Published 2026-06-05
Wrapper widgets around the shadcn_flutter component library, which is a set of widgets and utilities for building applications in flutter. It is a port of the shadcn UI package to flutter.
This package should make it easier to move away from the overly complicated flutter material widgets, both for styling and functionality.
The term "shadcn" does not stand for an acronym or specific phrase; rather, it is the online alias of the creator behind the popular UI component project shadcn/ui. The project is named after its author, who goes by "shadcn" on platforms like GitHub and Twitter.


hh generate), where each widget is prefixed with HH as a Typedef.pkg_widgets_shadcn_wrappers and pkg_widgets_shadcn_examples).pkg_widgets_shadcn package.HHBlinkText: removed redundant setState call in animation status listener.HHDelayedBuilder: added mounted and null-context guards before completing the future.HHScrollContainerV1 / HHScrollContainerV2: guard jumpTo calls with hasClients check to prevent errors when the controller has no attached scroll views.HHCodeSnippet: return the real Future from _initializedLanguages instead of an immediately-resolved value, so callers properly wait for Highlighter.initialize to complete.HHPubDevVersion: added _initialized flag to skip the pub.dev fetch on the first didChangeDependencies call (prevents a double-fetch on widget mount).CrossScroll (third-party): corrected || → && in horizontal/vertical thumb bounds check (logic bug that caused incorrect scroll-thumb clamping).HHLogViewer: updated GlobalKey type from HHScrollContainerV1State to HHScrollContainerState.HHLogViewerModel: replace where(…).isNotEmpty with any(…) for hasErrors/hasWarnings; replace forEach with for loops in add and clear.test/src/).SKILL.md.shared_preferences_platform_interface: ^2.4.0 development dependency.unwrapped components for unhandled material elements.widget_mappings map from lint_widget_mappings.dart file to allow global use outside of this package.HHFormFieldModel.vertical.HHFormFieldModel.spacing.AppBar now has centerTitle set to false because on macOS it defaults to center and all other platforms to start. This causes various layout issues.HHInputFeatureGeneratePassword.HHControlledChipInput.HHTextAreaTheme.HHIcons.offsetLeft, HHIcons.offsetTop.pkg_mime_info dependency.HHMinSizeContainer, application wrapper to maintain a minimum application window size.HHScrollContainerV2, uses CrossScroll, use typedef HHScrollContainer.HHConditionalSwitcher.CrossScroll, internal, (third party, heavily modified).HHDialog.withAnimation now defaults to false to prevent too much screen updates when the dialog must be refreshed to show progress updates.