Skip to content
Pinky UI

mobile

Live Activity Card

A pinned Dynamic-Island-style status pill for one in-progress task, with an optional ring progress indicator.

  • mobile
  • live activity
  • status
  • pinned
  • progress
Related pattern

Generic pinned task status, distinct from Mini Player's media-specific expand-to-full-player pattern.

Live preview

Delivery arriving12 min away · 4 stops left

Quick usage

usage
import { LiveActivityCard } from "@pinky-ui/systems";

<LiveActivityCard title="Delivery arriving" subtitle="12 min away" progress={0.6} onDismiss={dismiss} />

Install

Add @pinky-ui/systems as a dependency, or use the CLI to copy this component's source directly into your project — no dependency to manage, fully editable.

shell
npm install @pinky-ui/systems

Prefer to run the whole repository locally instead?

repository
git clone https://github.com/florash/Pinky-UI.git
cd Pinky-UI
npm install
npm run dev

Accessibility

  • Every gesture has a labelled button or keyboard path, and primary controls meet a 44px touch target.
  • State remains readable without relying on colour or motion.

Performance

  • Interaction state is local and bounded; gesture updates do not require a page-wide render loop.
  • Timers and listeners are cleaned up on unmount.

Reduced motion

The same state change resolves immediately; travel, scale and spring motion are removed without removing the interaction.

When to use

  • Touch-first product surfaces where the next action should stay close to the hand.

When not to use

  • Desktop-only workflows or interactions whose gesture would hide the only available action.