React + MotionMikrointeraktionen

Hüpfendes Benachrichtigungs-Badge

Ein Zähler, der mit einem kleinen Hüpfer auf der Glocke landet, wenn etwas Neues ankommt.

Einstellungen

3

Code

import { useState } from "react";
import { AnimatePresence, motion } from "framer-motion";
import { Bell } from "lucide-react";

const spring = { type: "spring" as const, stiffness: 300, damping: 30 };

interface NotificationBadgeProps {
  color?: string;
  count?: number;
}

export default function NotificationBadge({
  color = "#d25563",
  count = 3,
}: NotificationBadgeProps) {
  const [show, setShow] = useState(true);

  return (
    <button
      type="button"
      aria-label={show ? `${count} notificaciones` : "Mitteilungen"}
      onClick={() => setShow((s) => !s)}
      className="relative grid h-14 w-14 place-items-center rounded-full bg-white dark:bg-[#1c1c1e] text-[#1d1d1f] dark:text-[#f5f5f7] shadow-[0_1px_2px_rgba(0,0,0,0.03),0_8px_28px_rgba(0,0,0,0.05)]"
    >
      <Bell className="h-6 w-6" />
      <AnimatePresence>
        {show && (
          <motion.span
            initial={{ scale: 0, y: -10 }}
            animate={{ scale: 1, y: 0 }}
            exit={{ scale: 0 }}
            transition={spring}
            className="absolute -right-1 -top-1 grid h-6 min-w-6 place-items-center rounded-full px-1 text-[11px] font-semibold text-white"
            style={{ backgroundColor: color }}
          >
            {count}
          </motion.span>
        )}
      </AnimatePresence>
    </button>
  );
}

Prompt für KI

Füg ihn in ChatGPT, Claude oder Cursor ein und der Baustein wird mit diesen Einstellungen an dein Projekt angepasst, auch ohne React.

Mehr aus Mikrointeraktionen

Wofür du ihn nutzen kannst

Ein Badge an der Glocke ist das universelle Zeichen für „da wartet etwas auf dich“. Der Hüpfer macht Neues sichtbar, ganz ohne Ton oder Pop-up. Er gehört an das Nachrichten-Icon eines Marktplatzes, die Benachrichtigungen eines Forums, den Warenkorb eines Onlineshops oder ein internes Tool. Dieser kleine Hüpfer entscheidet, ob ein Benachrichtigungs-Badge bemerkt oder übersehen wird.

Über 99 zeigt man meist „99+“ statt der vollen Zahl. Halte Rot für echte Benachrichtigungen frei und lass das Badge nicht bei jedem Seitenaufruf neu hüpfen, sonst achtet bald keiner mehr darauf.