React + MotionLoaders

Puntos rebotando

Tres puntos que saltan uno detrás de otro, con el ritmo de siempre de «está escribiendo».

Ajustes

14px
0.9s

Código

import { motion } from "framer-motion";

interface BouncingDotsProps {
  color?: string;
  size?: number;
  /** Duración de un rebote en segundos. */
  speed?: number;
}

export default function BouncingDots({
  color = "#0071e3",
  size = 14,
  speed = 0.9,
}: BouncingDotsProps) {
  return (
    <div role="status" aria-label="Cargando" className="flex items-center gap-2">
      {[0, 1, 2].map((i) => (
        <motion.div
          key={i}
          className="rounded-full"
          style={{ width: size, height: size, backgroundColor: color }}
          animate={{ y: [0, -size, 0] }}
          transition={{
            duration: speed,
            repeat: Infinity,
            delay: i * (speed / 6),
            ease: "easeInOut",
          }}
        />
      ))}
    </div>
  );
}

Prompt para IA

Pégalo en ChatGPT, Claude o Cursor y adaptará el bloque a tu proyecto con estos ajustes, aunque no uses React.

Más en Loaders

Dónde usarlo

Tres puntos rebotando son la señal universal de que alguien está escribiendo. Ponlos en la burbuja de un chat de soporte, en la respuesta de un asistente de IA o en una app de mensajería mientras la otra persona teclea. Como indicador de escritura resulta más cálido que un spinner, porque sugiere que hay alguien al otro lado.

Déjalos pequeños, más o menos del tamaño del texto, y del mismo color que las letras de la burbuja. Bajar un poco la velocidad los hace más tranquilos; si van muy rápido, parece que la app está nerviosa.