Knit UI
GitHub

Playground

Loading playground…

false
false
false
Playground
<Marquee
  reverse={false}
  pauseOnHover={false}
  repeat={4}
  duration={8000}
  orientation="horizontal"
  gap="$md"
>
  <TagList />
</Marquee>

Examples

Horizontal

Horizontal scroll — the default orientation.

Loading example…

HorizontalSourceStorybook

Vertical

Vertical scroll — orientation set to vertical.

Loading example…

VerticalSourceStorybook

Reverse

Reverse direction — content scrolls right-to-left (or bottom-to-top).

Loading example…

ReverseSourceStorybook

Shadows

The inherited shadow elevation prop, from xs to xl.

Loading example…

ShadowsSourceStorybook

Pause On Hover

Pause on hover — animation freezes when the pointer enters the marquee.

Loading example…

Pause On HoverSourceStorybook

Slow Speed

Slow speed — a long duration makes the scroll deliberate and easy to read.

Loading example…

Slow SpeedSourceStorybook

Fast Speed

Fast speed — a short duration creates urgency or a ticker-tape effect.

Loading example…

Fast SpeedSourceStorybook

Few Repeats

Custom repeat count — fewer copies (2) visible at once.

Loading example…

Few RepeatsSourceStorybook

Styles

Per-slot styles targets individual parts — here the root frame and the text children.

Loading example…

StylesSourceStorybook

Rich Content

Rich content — images, icons and multi-line cards scrolled as items.

Loading example…

Rich ContentSourceStorybook

Props

PropTypeDefaultDescription
childrenReactNode—Content to scroll.
disabled systemboolean | undefined——
durationnumber | undefined100000Time in ms for one full group to scroll past.
fadeEdgeColorstring | undefined—Fade gradient color — deferred (see {@link MarqueeProps.fadeEdges}).
fadeEdgesboolean | undefinedtrueShow a gradient fade on the edges. Kept for Mantine API parity but currently a no-op — a cross-platform linear-gradient primitive is not available.
fadeEdgeSizestring | undefined—Fade gradient size — deferred (see {@link MarqueeProps.fadeEdges}).
pauseOnHoverboolean | undefinedfalsePause animation while the pointer is over the marquee (web only).
repeatnumber | undefined4Number of times the children group is duplicated for seamless looping.
reverseboolean | undefinedfalseReverse the scroll direction.
shadow system"xs" | "sm" | "md" | "lg" | "xl" | "xxs" | "xxl" | undefined——
styles systemSlotStyles<MarqueeStyles> | undefined—Per-slot style sugar — props spread onto the matching styled part.
theme systemThemeName | null | undefined—Applies a theme to this element

Style slots

Every part of Marquee can be styled through the styles prop. Explicit props on the component always win over slot styles.

SlotTargets
contentProps for the translated track (Marquee.Content).
groupProps for each repeated group (Marquee.Group).
rootProps for the clipping frame (Marquee.Frame).
textProps for text children (Marquee.Text).
Accessibility & DOM props (2)
PropType
keyKey | null | undefined
refRef<TamaguiElement> | undefined

Plus 498 inherited style props from Box — the full Tamagui/React Native style surface, including token shorthands like p, mx, bg and c. See Tokens for the scales they accept, or the full list.

Edit this page on GitHub