Pricing
Get Started
  • Introduction
  • Installation
  • MCP Server
  • Saved
Site
  • Builder (Beta)
  • Pricing
  • Roadmap
  • Affiliates
Browse
  • All Components80 New
Text34
  • 3D Letter Swap
  • 3D Text Reveal
  • ASCII Ripple
  • Bending Marquee
  • Blur Highlight
  • Cipher RevealNew
  • Domino LetteringNew
  • Elastic LetteringNew
  • Ghost TypeNew
  • Glitch Text
  • Glyph LotteryNew
  • Gravity LettersNew
  • Label OrbitNew
  • Luminous TypeNew
  • Mesh LetteringNew
  • Orbital TypeNew
  • Particle Text
  • Ribbon TypeNew
  • Rising InkNew
  • Shatter TypeNew
  • Signal TypeNew
  • Smoke TypeNew
  • Speeding Text
  • Spring LetteringNew
  • Staggered Text
  • Stipple TypeNew
  • Tessera TrailNew
  • Text Cube
  • Text MorphNew
  • Text Path
  • Text Scatter
  • Typographic WallNew
  • Vapor TypeNew
  • Wave LetteringNew
Backgrounds98
  • ASCII Tiles
  • Ascii Waves
  • Astral ShellNew
  • Aura Blob
  • Aurora Beam
  • Aurora Blur
  • Axial BeamNew
  • Binary OrbitsNew
  • Black Hole
  • Blinking Dots
  • Blinking Squares
  • Blurred Rays
  • Chroma Blinds
  • Chroma CurrentNew
  • Chroma Waves
  • Cloud AtlasNew
  • Color Loops
  • Concentric TidesNew
  • Contour TideNew
  • Dappled LightNew
  • Dither Wave
  • Dot Shift
  • Eclipse
  • Fading StarsNew
  • Falling Rays
  • Flame Paths
  • Fog Sphere
  • Glass Flow
  • Glass Tiles
  • Glimmer WrapNew
  • Glitter Warp
  • Glowing Ridges
  • Glowing Wave
  • Glue Dots
  • Glyph EmberNew
  • Glyph OrbNew
  • Glyph SonarNew
  • Glyph TideNew
  • Gradient Bars
  • Grain Wave
  • Halftone Vortex
  • Halftone Wave
  • Hexagonal VaultNew
  • Horizon BloomNew
  • Interference RibbonsNew
  • Landscape
  • Light Droplets
  • Lightspeed
  • Liquid Bars
  • Liquid Lines
  • Long Exposure
  • Luminous FilamentsNew
  • Metallic Swirl
  • Minimal Ripple
  • Mosaic
  • Mosaic Waves
  • Neon Reveal
  • Neural Flash
  • Neural Float
  • Neural Tunnel
  • Nexus RaysNew
  • Perspective Grid
  • Photon KnotNew
  • Pixel Rain
  • Prismatic SlatsNew
  • Radial Liquid
  • Ravine
  • Retro Lines
  • Ring FieldNew
  • Rising Lines
  • Rising Particles
  • Rolling Blinds
  • Rotating Stars
  • Rubber Fluid
  • Satin RidgesNew
  • Shader Waves
  • Shadow Bars
  • Silk Waves
  • Simple Swirl
  • Specter Orb
  • Spectral Clouds
  • Spectral DrapeNew
  • Spiral FunnelNew
  • Square Matrix
  • Squares Terminal
  • Squircle Shift
  • Star Swipe
  • Swirl Blend
  • Synaptic Shift
  • Tech Wall
  • Terminal RainNew
  • Thinking Dots
  • Twilight Lines
  • Vortex
  • Voxel ArcNew
  • Warp Twister
  • Watercolor
  • Wireframe Ball
3D & Shaders49
  • Agentic Ball
  • AI Blob
  • Album RailNew
  • Bend Gallery
  • Chrome OrbitNew
  • Circle Stack
  • Concave CarouselNew
  • Constellation GalleryNew
  • Contact SheetNew
  • Depth Card
  • Depth Image
  • Depth RibbonNew
  • Device
  • Dolly Gallery
  • Elastic ReelNew
  • Elastic StickerNew
  • Ember RevealNew
  • Expanding GridNew
  • Frame Border
  • Glass Reveal
  • Globe
  • Gradient Blob
  • Helix GalleryNew
  • Infinite Gallery
  • Inverted Dome
  • Iris GalleryNew
  • Lenticular Carousel
  • Momentum RingNew
  • Page Flip
  • Parallax Carousel
  • Particle Image
  • Particle Morph
  • Passage GalleryNew
  • Pixel Reveal
  • Pixel Sculpt
  • Pixelate Hover
  • Pond ImageNew
  • Portal
  • Prism CarouselNew
  • Rotating Cards
  • Scroll BendNew
  • Scroll Portal
  • Shader Card
  • Shader Reveal
  • Spin ShutterNew
  • Star Burst
  • Tumble Carousel
  • Twisting Gallery
  • Warped Card
Cursor Effects21
  • Arc CursorNew
  • Ascii Cursor
  • Celebration CursorNew
  • Chroma HaloNew
  • Cursor Wave
  • Custom Cursor
  • Dither Cursor
  • Drafting CursorNew
  • Glass Cursor
  • Glyph StreamNew
  • Grid Rise
  • Gyroscope CursorNew
  • Liquid Ascii
  • Parallax Pills
  • Pigment TrailNew
  • Pixel Magnet
  • Ribbon TrailNew
  • Smooth Cursor
  • Snapshot TrailNew
  • Stardust CursorNew
  • User Cursor
UI & Cards28
  • Animated List
  • Card Spread
  • Center Flow
  • Chroma Card
  • Circle Gallery
  • Circles
  • Click Stack
  • Comparison Slider
  • Credit Card
  • Draggable Grid
  • Frame Scrub
  • Gradient Carousel
  • Hover Preview
  • Liquid Swap
  • Loupe ImageNew
  • Magic Transform
  • Modal Cards
  • Orbit ReelNew
  • Parallax Cards
  • Preloader
  • Reel Gallery
  • Scroll Mask
  • Scroll Stack
  • Simple Graph
  • Skewed Carousel
  • Tile Reveal
  • Tilted Tiles
  • Tumble WallNew
  1. Docs
  2. Components
  3. UI & Cards
  4. Tumble Wall
PreviousTilted TilesUI & Cards

Animated components, blocks, and templates for React. Pay once, ship stunning pages forever.

pro@reactbits.dev

Site

HomeBuilder (Beta)PricingTestimonialsFAQsRoadmapChangelogFree Components

Docs

IntroductionInstallationMCP ServerComponentsBlocksTemplates

Resources

AboutUse casesComparisonsAlternativesFor AI agents

Legal & Account

LoginAffiliateLicensePrivacyContact

© 2026 pro.reactbits.dev. All rights reserved.

Tumble Wall

A pile of photos, avatars or tags that rains in and can be thrown around

tumble-wall-tw

Customize

Frame Color
Text Color
Background
Count
24
Size
116px
Size Variance
0.40
Fill
0.40
Radius
18px
Frame Width
6.0px
Shadow
0.50
Gravity
1.00
Gravity X
0.00
Bounce
0.32
Friction
0.30
Air Friction
0.012
Spin
0.50
Drift
0.00
Stagger
55ms
Throw
1.00
Pop Force
1.00
Drag Stiffness
0.20
Hover Scale
1.06

Props

36
NameTypeDefaultDescription
itemsTumbleWallItem[]studio portrait collectionPhotos or labels in the pile: { src?, alt?, title?, href? }. Items repeat to reach count. An item without src becomes a text tag, and an item with href becomes a link.
countnumber24Number of bodies in the pile, from 1 to 80.
shape"circle" | "square" | "card" | "chip" | "mixed""circle"Shape of each body, and of its collision outline. Card is a 3:4 portrait, chip is a pill with an avatar and the title, mixed varies circles, squares and cards.
sizenumber116Width of a body in pixels before fitting. Chips use 40% of it as their height.
sizeVariancenumber0.4How much body sizes vary, from 0 (all equal) to 1.
fillnumber0.4Largest share of the frame the pile may cover. Bodies shrink to fit, so the same pile works from phones to wide screens.
radiusnumber18Corner radius of squares and cards, in pixels at the base size.
frame"none" | "border" | "polaroid""none"A rim of frameColor around each photo, or a print with a deeper bottom edge that holds the title.
frameWidthnumber6Width of the frame in pixels at the base size.
frameColorstring"#FFFFFF"Colour of frames, chips and the title label.
textColorstring"#0A0A0A"Colour of titles on frames, chips and the label.
backgroundColorstring"transparent"Background of the frame. Transparent shows whatever is behind the component.
shadownumber0.5Strength of the soft shadow under each body, from 0 to 1.
showTitlesbooleantrueShow item titles: on polaroid frames, and in a small label above a hovered, focused or tapped photo.
monochromebooleanfalseRender photos in black and white. A hovered or held photo fades back to colour.
hoverScalenumber1.06How far a hovered photo lifts out of the pile. 1 turns it off.
gravitynumber1Vertical gravity from -3 to 3. Negative values pile the photos against the top edge.
gravityXnumber0Horizontal gravity from -3 to 3, for piles that lean or slide into a side.
bouncenumber0.32Restitution of collisions, from 0 (dead stop) to 0.95.
frictionnumber0.3Surface friction between bodies, from 0 to 1.
airFrictionnumber0.012Air drag. Higher values slow everything down.
spinnumber0.5Tilt and spin the photos have as they enter.
driftnumber0A slow current that keeps bodies floating. Pair it with zero gravity for a weightless pile.
entrance"rain" | "burst" | "drop" | "none""rain"How the pile arrives once the component scrolls into view: one by one, out from the middle, all at once, or already settled.
staggernumber55Milliseconds between bodies in the rain entrance.
draggablebooleantrueAllow picking photos up and throwing them.
dragStiffnessnumber0.2How tightly a held photo follows the pointer. Low values let it swing from where you grabbed it.
throwStrengthnumber1Multiplier for the speed a photo keeps when released.
popForcenumber1Strength of a tap. Tapping a photo makes it hop; tapping empty space pops the photos around it. 0 turns both off.
containbooleantrueClose the edge the photos fell in through, so throws stay inside. Off, they can fly out and fall back in.
pausedbooleanfalseFreeze the physics. Photos can still be moved by hand.
ariaLabelstring"Photo pile"Accessible name of the group.
onSelect(item, index) => void—Called when a photo is clicked, tapped or activated with the keyboard without being dragged.
ref{ drop, shake, pop }—drop() replays the entrance, shake(strength?) tosses the whole pile, pop(x, y, strength?) taps the pile at a point in pixels.
classNamestring—Classes for the root element. It fills its parent, with a 360px minimum height.
styleCSSProperties—Inline styles for the root element.
itemsTumbleWallItem[]

Photos or labels in the pile: { src?, alt?, title?, href? }. Items repeat to reach count. An item without src becomes a text tag, and an item with href becomes a link.

Defaultstudio portrait collection
countnumber

Number of bodies in the pile, from 1 to 80.

Default24
shape"circle" | "square" | "card" | "chip" | "mixed"

Shape of each body, and of its collision outline. Card is a 3:4 portrait, chip is a pill with an avatar and the title, mixed varies circles, squares and cards.

Default"circle"
sizenumber

Width of a body in pixels before fitting. Chips use 40% of it as their height.

Default116
sizeVariancenumber

How much body sizes vary, from 0 (all equal) to 1.

Default0.4
fillnumber

Largest share of the frame the pile may cover. Bodies shrink to fit, so the same pile works from phones to wide screens.

Default0.4
radiusnumber

Corner radius of squares and cards, in pixels at the base size.

Default18
frame"none" | "border" | "polaroid"

A rim of frameColor around each photo, or a print with a deeper bottom edge that holds the title.

Default"none"
frameWidthnumber

Width of the frame in pixels at the base size.

Default6
frameColorstring

Colour of frames, chips and the title label.

Default"#FFFFFF"
textColorstring

Colour of titles on frames, chips and the label.

Default"#0A0A0A"
backgroundColorstring

Background of the frame. Transparent shows whatever is behind the component.

Default"transparent"
shadownumber

Strength of the soft shadow under each body, from 0 to 1.

Default0.5
showTitlesboolean

Show item titles: on polaroid frames, and in a small label above a hovered, focused or tapped photo.

Defaulttrue
monochromeboolean

Render photos in black and white. A hovered or held photo fades back to colour.

Defaultfalse
hoverScalenumber

How far a hovered photo lifts out of the pile. 1 turns it off.

Default1.06
gravitynumber

Vertical gravity from -3 to 3. Negative values pile the photos against the top edge.

Default1
gravityXnumber

Horizontal gravity from -3 to 3, for piles that lean or slide into a side.

Default0
bouncenumber

Restitution of collisions, from 0 (dead stop) to 0.95.

Default0.32
frictionnumber

Surface friction between bodies, from 0 to 1.

Default0.3
airFrictionnumber

Air drag. Higher values slow everything down.

Default0.012
spinnumber

Tilt and spin the photos have as they enter.

Default0.5
driftnumber

A slow current that keeps bodies floating. Pair it with zero gravity for a weightless pile.

Default0
entrance"rain" | "burst" | "drop" | "none"

How the pile arrives once the component scrolls into view: one by one, out from the middle, all at once, or already settled.

Default"rain"
staggernumber

Milliseconds between bodies in the rain entrance.

Default55
draggableboolean

Allow picking photos up and throwing them.

Defaulttrue
dragStiffnessnumber

How tightly a held photo follows the pointer. Low values let it swing from where you grabbed it.

Default0.2
throwStrengthnumber

Multiplier for the speed a photo keeps when released.

Default1
popForcenumber

Strength of a tap. Tapping a photo makes it hop; tapping empty space pops the photos around it. 0 turns both off.

Default1
containboolean

Close the edge the photos fell in through, so throws stay inside. Off, they can fly out and fall back in.

Defaulttrue
pausedboolean

Freeze the physics. Photos can still be moved by hand.

Defaultfalse
ariaLabelstring

Accessible name of the group.

Default"Photo pile"
onSelect(item, index) => void

Called when a photo is clicked, tapped or activated with the keyboard without being dragged.

Default—
ref{ drop, shake, pop }

drop() replays the entrance, shake(strength?) tosses the whole pile, pop(x, y, strength?) taps the pile at a point in pixels.

Default—
classNamestring

Classes for the root element. It fills its parent, with a 360px minimum height.

Default—
styleCSSProperties

Inline styles for the root element.

Default—