A dynamic island–style pill that animates through transaction states: idle, processing, completed, and failed.
pnpm dlx shadcn@latest add https://orbit.ruturaj.xyz/r/status-check.jsonimport { ArrowRight, CheckCircle2, Loader2, XCircle } from "lucide-react"
import { StatusCheck } from "@/components/status-check"
export default function Page() {
return (
<StatusCheck
idle={{ label: "Start Transaction", icon: ArrowRight, dotColor: "#9ca3af", iconClass: "text-muted-foreground" }}
processing={{ label: "Processing", sublabel: "Verifying payment...", icon: Loader2, iconClass: "text-blue-400", dotColor: "#60a5fa", spin: true }}
completed={{ label: "Completed", sublabel: "Payment successful", icon: CheckCircle2, iconClass: "text-emerald-400", dotColor: "#34d399", glowColor: "#34d399" }}
failed={{ label: "Failed", sublabel: "Transaction declined", icon: XCircle, iconClass: "text-red-400", dotColor: "#f87171", glowColor: "#f87171" }}
/>
)
}Failure
Same config with simulateFailure to always end in the failed state.
Deploy
Custom labels and icons for a deployment flow.
Charge
Custom labels and colors for a payment charge flow.