Syed Hasnain

Approval Card

AI chats 18

About

A human-in-the-loop decision surface for questions, review steps, and consequential actions.

Built with React and Tailwind. Copy the prompt and paste it into Claude Code, Cursor or Lovable: your agent adds Approval Card to your project and fits it to your theme.

Code

How Approval Card is used: the demo's code. The component's own source comes with a free account.

Usage.tsx

import { useState } from 'react'
import ApprovalCard from '@/components/ui/approval-card'

export default function Demo() {
  const [status, setStatus] = useState<'approved' | 'denied' | 'pending'>('pending')

  return (
    <ApprovalCard
      className="w-full max-w-lg"
      description="The agent will publish 14 locally authored components to the public registry."
      onDecision={(decision) => setStatus(decision === 'approve' ? 'approved' : 'denied')}
      status={status}
      title="Publish this release?"
    />
  )
}

Dependencies

More by Syed Hasnain

View all
  • Color Picker

    Color Picker

    110
  • Cost Meter

    Cost Meter

    34
  • Message Scroller

    Message Scroller

    28
  • Background Inbox

    Background Inbox

    26
  • Quota Banner

    Quota Banner

    25
  • Commit

    Commit

    23
  • Attachments

    Attachments

    22
  • Image Generation Loader

    Image Generation Loader

    19

More in AI chats

View all
  • AI Actions

    AI Actions

    326
  • Agent Chat

    Agent Chat

    18
  • Message Thread

    Message Thread

    45
  • Environment Variables

    Environment Variables

    14
  • System Message

    System Message

    58
  • AI Diff

    AI Diff

    74
  • Message With Header And Delivery Status

    Message With Header And Delivery Status

    41
  • AI Task List

    AI Task List

    167

Explore more

Part of Pasta UI — browse the full library on 21st.dev.