Six Components That Make Interfaces Feel Alive
Some apps just feel good to use. It’s rarely one big feature; it’s the accumulation of small, considered details that quietly signal the people who built it have their stuff together. I’ve been exploring popular UX libraries to find the components behind that feeling and capturing the ones I found most fun. Here are six of them, each one live in your browser. Click them, drag them, right-click them, break them. Each follows the site’s theme (flip the toggle up top) and is best on desktop.
The command palette
Hit Cmd/Ctrl + K, type a couple of letters, and jump anywhere or run any command without touching a menu. Raycast, Linear, Notion, and GitHub all run on it. Past a few dozen actions, a list you type into beats a menu you hunt through. The library most people reach for is cmdk.
The sliding tab indicator
The highlight pill slides under the active tab instead of blinking into place. iOS, macOS, and Vercel all do it. It’s subtle enough that most people never consciously notice, which is exactly why it’s worth studying. In React, Motion’s layout animations give you the same effect for free.
The optimistic like button
Tap the heart and it fills instantly, before the server says a word. The request goes out in parallel; if it succeeds there’s nothing to do, because the screen already matched the truth. React even ships this as useOptimistic.
Stacked toasts
The little confirmation that slides into a corner: “Saved,” “Copied,” “Sent.” Sonner is the version worth studying, where toasts deck on top of each other and fan out when you hover.
Drag to reorder
Grab a row and the list rearranges under you: the others slide aside to open a slot, and the one you’re holding drops into it. Trello cards, playlist queues, priority lists, every settings page that lets you pin your favorites in the order you want. dnd-kit is the React reference, handling sortable lists, keyboard dragging, and collision detection for you.
The context menu
Right-click a file and a menu appears under your cursor with the actions that fit it: rename, duplicate, move, delete. It brings the commands to whatever you’re pointing at instead of sending you to a toolbar and back. It’s the gesture that quietly separates a web page from an app. Radix handles the positioning, focus, and submenus for you.
That’s the set for now. I’ll add more as I come across them.
// END