micka_design

Checkbox Group

Forms 18

About

A checkbox group with proximity hover, animated checkmarks, contiguous selection merging, and spring transitions. Built on Radix UI with Framer Motion.

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

Code

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

Usage.tsx

"use client";

import { useState } from "react";
import { CheckboxGroup, CheckboxItem } from "../components/ui/checkbox-group";

const items = ["Email notifications", "Push notifications", "SMS alerts", "Weekly digest", "Monthly report"];

export default function CheckboxNoneCheckedDemo() {
  const [checked, setChecked] = useState<Set<number>>(new Set());

  const toggle = (index: number) => {
    setChecked((prev) => {
      const next = new Set(prev);
      if (next.has(index)) next.delete(index);
      else next.add(index);
      return next;
    });
  };

  return (
    <div className="flex items-center justify-center min-h-screen bg-background">
      <CheckboxGroup checkedIndices={checked} className="w-80">
        {items.map((item, i) => (
          <CheckboxItem key={item} label={item} index={i} checked={checked.has(i)} onToggle={() => toggle(i)} />
        ))}
      </CheckboxGroup>
    </div>
  );
}

Dependencies

More by micka_design

View all
  • Switch

    Switch

    89
  • Select

    Select

    85
  • Segmented Tabs

    Segmented Tabs

    45
  • Table

    Table

    39
  • Accordion

    Accordion

    38
  • Tabs Subtle

    Tabs Subtle

    25
  • Slider

    Slider

    24
  • Badge

    Badge

    18

More in Forms

View all
  • Contact Card

    Contact Card

    1.1K
  • Form

    Form

    17
  • Premium Auth

    Premium Auth

    555
  • Authentication Card

    Authentication Card

    51
  • Book A Demo 1

    Book A Demo 1

    87
  • Login 1

    Login 1

    61
  • SignInPage

    SignInPage

    736
  • Form

    Form

    12