Ballmac UI home

Container Scroll

A showcase frame that starts tilted back in 3D and flattens to face the reader as it scrolls into view, with a title that lifts alongside.

Dashboard

Everything in one calm view

Revenue

$48.2k

Active users

2,910

Conversion

4.6%

Installation

$ pnpm dlx shadcn@latest add @ballmac/container-scroll

Usage

import { ContainerScroll } from "@/components/ballmac/container-scroll"

The full example is in the Code tab above.

Examples

Steeper tilt

Steeper tilt

Any content: video, screenshot, live demo

API reference

PropTypeDefault
title

Heading above the frame. It slides up slightly as the frame flattens.

React.ReactNode—
container

A scrollable element to track instead of the page.

React.RefObject<HTMLElement | null>—
tilt

Starting tilt of the frame in degrees.

number22
frameClassName

Classes for the frame that holds the children.

string—

Also accepts the standard attributes of its root element.

Accessibility

KeyAction
Reduced motionThe frame is flat from the start, with no transform
ContentChildren stay real, selectable, focusable content

Use with AI

<ContainerScroll title={...}>{screenshot or live demo}</ContainerScroll>. tilt sets the starting angle; container tracks a scrollable element. With the shadcn MCP server set up (guide), ask your agent:

Add the Ballmac UI Container Scroll (@ballmac/container-scroll) to this project with the shadcn MCP, then use it where it fits.

Use it for

  • Product hero sections
  • Showing a dashboard or app screenshot

Not for

  • Content that must stay flat and readable at all times
  • Pages that scroll inside nested containers without passing container

Registry JSON: https://ui.ballmac.com/r/container-scroll.json

Credits

Free to use in personal and commercial projects.

Registry
shadcn/utils