PaperCrumple

Imagen que se arruga como papel al mantenerla pulsada.

Cómo instalarlo

npx shadcn@latest add https://reactbits.dev/r/PaperCrumple-TS-TW

Cuándo usarlo

Para acciones frecuentes: confirmar, marcar, valorar. El feedback convierte un clic en una sensación.

Props para personalizarlo

PropTipoPor defecto
srcstring-
altstring'Crumplable image'
backSrcstring''
widthnumber320
heightnumber400
sceneHeightnumber560
imageFit'cover' | 'contain''cover'
releaseBehavior'stay' | 'restore' | 'creased''restore'
crumpleAmountnumber0.85
crumpleDurationnumber0.55
releaseDurationnumber0.4
foldCountnumber6
foldSharpnessnumber0.6
wrinkleDepthnumber0.65
creaseStrengthnumber0.18
paperColorstring'#f4f0e8'
roughnessnumber0.92
paperTexturenumber0.08
lightIntensitynumber1.8
lightAnglenumber-35
shadowbooleantrue
shadowOpacitynumber0.08
draggablebooleantrue
dragRotationnumber10
dragRadiusnumber180
returnToOriginbooleantrue
rotationnumber0
seednumber7
detailnumber64
disabledbooleanfalse
resetKeynumber | string0
onStateChange(state: PaperCrumpleState) => void-
onError(error: Error) => void-
classNamestring''
styleCSSProperties-

Otros efectos de microinteracciones

  • RefineFrame — Marco que muestra el progreso de una imagen generada sin saltos.
  • ShinyButton — Botón con un brillo que lo cruza.
  • SpringCheck — Checkbox con muelle que marca, tacha y atenúa la tarea.
  • TearTicket — Entrada cuya matriz se arranca a mano con fibras de papel.
  • AnimatedBadge — Etiqueta con brillo animado para novedades.
  • CodeSlots — Campo de código de un solo uso (OTP) con animación por dígito.