fetaUI
GitHub

Scroll Area

Custom scrolling that keeps the native feel: an overlay bar, edge fades and the Soft tray shell.

FreeWeb and MobileMotion

Preview

npx shadcn add @fetaui/scroll-area
Playground

v1.2.0-beta.50Oct 29

v1.2.0-beta.49Oct 28

v1.2.0-beta.48Oct 26

v1.2.0-beta.47Oct 24

v1.2.0-beta.46Oct 23

v1.2.0-beta.45Oct 21

v1.2.0-beta.44Oct 18

v1.2.0-beta.43Oct 16

v1.2.0-beta.42Oct 15

v1.2.0-beta.41Oct 12

Releases
RELEASESLatest first

v1.2.0-beta.50Oct 29

v1.2.0-beta.49Oct 28

v1.2.0-beta.48Oct 26

v1.2.0-beta.47Oct 24

v1.2.0-beta.46Oct 23

v1.2.0-beta.45Oct 21

v1.2.0-beta.44Oct 18

v1.2.0-beta.43Oct 16

v1.2.0-beta.42Oct 15

v1.2.0-beta.41Oct 12

Activity
Activity12 new
Emma Collinsapproved the onboarding redesign2m
Marcus Johnsonmerged the fix for the flaky checkout test9m
Chloe Nguyenshared the September retention report21m
Daniel Kimrotated the staging API keys38m
Sofia Ramirezmoved the vendor review to Thursday1h
Jasmine Brooksleft 4 comments on Pricing v31h
Olivia Bennettscaled the worker pool to 12 nodes2h
Gallery
PHOTOS4 of 24
Rooms
Rooms

Living room

Oak beams, linen sofas

Sunroom

Round table for six

Study

Green walls, walnut desk

Bedroom

Striped linen, oak bed

Table
ACCOUNTSScroll both ways
ACCOUNTREGIONPLANSEATSMRRSTATUSRENEWS
NorthwindUS EastScale120$8,400ActiveJan 12
Acme CoEU WestTeam42$1,890ActiveFeb 03
GlobexAPACScale88$6,160Past dueNov 30
InitechUS WestStarter12$240TrialNov 14
UmbrellaEU NorthTeam30$1,350ActiveMar 21
HooliUS EastScale210$14,700ActiveApr 02
Orientation
Icons animation
Edge fades
Motion

Installation

Terminal· bash
 npx shadcn add @fetaui/scroll-area

Accessibility

  • The viewport is a labelled, focusable region, so the keyboard can scroll it.
  • The bar is decorative to screen readers.
  • Focus is never trapped inside.

Motion

  • The bar wakes in 120 ms when you scroll or hover, and sleeps 800 ms later over 240 ms.
  • The thumb widens from 4 to 6 in 160 ms and the track fades in.
  • Dragging inks the thumb and raises a mono position tip.
  • Edge fades clear in 160 ms when there is nothing more.
  • With reduced motion, the bar stays visible and changes are instant.

Responsive behavior

  • A 10 px bar on Web. A 6 px bar with a 3 px thumb on Mobile, with no track or tip.
  • The thumb shows only while scrolling on touch.

Performance

  • Scrolling stays native. The scroll listener is passive and the thumb moves by a direct transform write, without a React render.
  • ResizeObservers track the content, and the bar sleeps after 800 ms.

Note for AI

Give your coding assistant the Markdown reference instead of screenshots.

  • Import ScrollArea and Scrollbar. Props: label, orientation, fades, shell, height, viewportRef, animated.
  • label names the region so the keyboard can scroll it. Set height so a vertical scroll has a limit.
  • shell wraps it in the Soft tray with title, meta and actions. Use viewportRef to scroll from your own buttons.

Related