Skip to content

bash
npm install @hua-labs/hua
tsx
import { Marquee } from "@hua-labs/ui/advanced";

React
Next.js
TypeScript
Tailwind
Framer
Vercel

DesignDevelopDeployScaleIterate
FastReliableSecureModernBeautiful

— User 1

— User 2

— User 3

— User 4

— User 5

direction"left" | "right" | "up" | "down""left"docs:components.marquee.props.direction
speednumber50docs:components.marquee.props.speed
pauseOnHoverbooleantruedocs:components.marquee.props.pauseOnHover
pauseOnClickbooleanfalsedocs:components.marquee.props.pauseOnClick
gapnumber16docs:components.marquee.props.gap
gradientbooleantruedocs:components.marquee.props.gradient
gradientColorstring"hsl(var(--background))"docs:components.marquee.props.gradientColor
gradientWidthnumber100docs:components.marquee.props.gradientWidth

docs:common.basicUsagetsx
import { Marquee } from '@hua-labs/ui/advanced';

<Marquee speed={40} gradient>
  {logos.map(logo => (
    <LogoCard key={logo.name} {...logo} />
  ))}
</Marquee>
docs:components.marquee.demo.reverseDirectionCodetsx
<Marquee direction="right" speed={30}>
  {items.map(item => <ItemCard {...item} />)}
</Marquee>
docs:components.marquee.demo.verticalScrollCodetsx
<Marquee direction="up" speed={30} gradient={false}>
  {testimonials.map(t => <TestimonialCard {...t} />)}
</Marquee>

  • docs:components.marquee.accessibility.pauseOnHoverLabel: docs:components.marquee.accessibility.pauseOnHoverValue
  • docs:components.marquee.accessibility.duplicatedContentLabel: docs:components.marquee.accessibility.duplicatedContentValue