Flow Kit LogoFlow Kit

Pinned List

An animated list that lets users pin items to a dedicated section. Items glide between sections with spring-based layout animations, and the pin icon rotates with a tactile color transition.

Preview

Pinned

  • Design System Tokens

    Color, spacing, and typography primitives

  • Auth Flow

    Login, signup, and password reset

All Items

  • Dashboard Layout

    Sidebar navigation with collapsible sections

  • API Rate Limiter

    Token-bucket middleware for Express

  • Search Indexer

    Full-text search with fuzzy matching

Installation

npm install motion lucide-react

API Reference

PinnedList

PropTypeDefaultDescription
itemsPinnedListItem[]Array of items to render
onTogglePin(id: string) => voidCalled when a pin button is clicked
classNamestringundefinedAdditional CSS classes
pinnedLabelstring"Pinned"Heading for the pinned section
unpinnedLabelstring"All Items"Heading for the unpinned section

PinnedListItem

FieldTypeDescription
idstringUnique identifier used for layout animation
contentReact.ReactNodeContent rendered inside the list item
pinnedbooleanWhether the item is pinned

The component is fully controlled — you own the items state and handle pin toggling via onTogglePin. The pin accent color uses --primary so it follows your theme automatically.