Vibary.ai
← Vibe Coding

Role Badge Assign

Granting a role slides the selection pill and settles a new badge onto the member row.

authenticationminimalpremiuminteraction · finite · intermediate · ~0.5s
Interactive · click to play
Variant

The animated component in this preview is rendered from the canonical file shown here. The surrounding demo shell only provides context and is not part of the copied code.

321 lines · react + motion only
import { useId, useState } from "react";
import { AnimatePresence, motion, useReducedMotion } from "motion/react";

/**
 * Vibary · Role Badge Assign
 *
 * Changing a member's permissions is a consequential edit that usually
 * looks like a dropdown closing. Here the selection pill slides to the

About this pattern

Permission changes are consequential edits that normally look like a dropdown closing. This makes the grant visible in the row it applies to: a single selection pill travels between the role chips, so the choice reads as one object moving rather than three colours changing, and the badge beside the member name is replaced in the same beat. The badge is a word, so it rises and fades but never scales or rebounds — the only element that changes size is a ring behind it, which contains no text and expands exactly once. The badge slot is a fixed box, so replacing one word with another never reflows the row.

Team member permission changeAdmin console role assignmentAccess level pickerWorkspace member management

Where it shows up

Screens we drew to show where this motion usually sits. Illustrations, not captures of any product.

Related patterns