Dynamic Island

A physical morphing island component that smoothly transitions between a compact indicator, interactive summary, profile card, and social dock with spring physics.

Installation

Add the component directly to your repository using shadcn CLI:

npx shadcn@latest add Surajmaurya1/easyui/dynamic-island

API Reference

PropTypeDefaultDescription
avatarstringundefinedURL of user avatar image
avatarAltstringundefinedAlt text for the avatar image
namestring'Suraj Maurya'Display name in expanded and profile views
rolestring'Frontend Developer'Subtitle or profession title
descriptionstring'Building thoughtful interfaces...'Bio or description text rendered in profile view
greetingstring'Hello, I am [name]'Custom message displayed in expanded state
statusTextstring'Available for work'Optional availability chip displayed beside name
metadataDynamicIslandMetadataItem[]undefinedKey-value badges rendered in profile card
socialsDynamicIslandSocials5 default linksSocial links as an array of items or platform key-value object
state'collapsed' | 'expanded' | 'profile' | 'share'undefinedControlled state value
defaultState'collapsed' | 'expanded' | 'profile' | 'share''collapsed'Initial uncontrolled state
onStateChange(state: DynamicIslandState) => voidundefinedCallback invoked whenever state changes
profileContentReactNodeundefinedCustom ReactNode replacing default profile body
shareContentReactNodeundefinedCustom ReactNode replacing default share dock
classNamestringundefinedOptional additional styling applied to the island container