About
A press-and-hold confirmation button with animated fill progress and a matching useLongPress hook for building your own hold-to-confirm interactions.
Built with React and Tailwind. Copy the prompt and paste it into Claude Code, Cursor or Lovable: your agent adds Long Press Button to your project and fits it to your theme.
Code
How Long Press Button is used: the demo's code. The component's own source comes with a free account.
Usage.tsx
"use client";
import * as React from "react";
import { LongPressButton } from "@/components/ui/long-press";
export default function LongPressDemo() {
const [archived, setArchived] = React.useState(false);
return (
<div className="flex min-h-[280px] w-full flex-col items-center justify-center gap-4">
<div className="flex items-center gap-3">
<LongPressButton onLongPress={() => setArchived(true)}>
Hold to archive
</LongPressButton>
<LongPressButton onLongPress={() => setArchived(false)}>
Hold to restore
</LongPressButton>
</div>
<p className="text-[13px] text-stone-500 dark:text-stone-400">
{archived ? "Archived" : "Active"}
</p>
</div>
);
}
















