SameerJS6/lina has 350 GitHub stars and 7 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-09 08:23 UTC. Last push 2026-04-06.
Drop-in shadcn/ui ScrollArea replacement (Radix/Base UI) with native touch, adaptive masks, and polished interactions.
What you can do
- Adaptive mask - Subtle edge fades appear only when content is scrollable and adapt in real time to scroll position, axis, and container shape.
- Micro‑interactions - Hover/press effects for the custom scrollbar on non‑touch (desktop) devices, with responsive thumb behavior.
- Native touch optimization - Uses the right touch‑action, momentum scrolling, and passive listeners so scrolling feels truly native on iOS/Android while staying precise on desktop.
- Drop‑in replacement - Matches shadcn/ui's ScrollArea API, same props, slots, and className ergonomics—so you can swap it in with zero extra step.
Measured star growth
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalLina
The Adaptive Scroll Area for Modern UIs
A responsive scroll area that feels native on touch devices, offering custom styling and enhanced interactions where it matters most.
Lina is a drop‑in replacement for shadcn/ui's ScrollArea with better defaults and a more native feel.

Features
- Adaptive mask - Subtle edge fades appear only when content is scrollable and adapt in real time to scroll position, axis, and container shape.
- Micro‑interactions - Hover/press effects for the custom scrollbar on non‑touch (desktop) devices, with responsive thumb behavior.
- Native touch optimization - Uses the right touch‑action, momentum scrolling, and passive listeners so scrolling feels truly native on iOS/Android while staying precise on desktop.
- Drop‑in replacement - Matches shadcn/ui's
ScrollAreaAPI, same props, slots, andclassNameergonomics—so you can swap it in with zero extra step. - Radix and Base UI variants - Choose Radix or Base UI primitives while keeping a consistent API and visual design.
Installation
npx shadcn@latest add https://lina.sameer.sh/r/lina-radix.json
Usage
import { ScrollArea } from "@/components/ui/scroll-area";
export default function Example() {
return (
<ScrollArea className="h-[200px] w-[350px] rounded-md border p-4">
Jokester began sneaking into the castle in the middle of the night and leaving jokes all over the place: under the
king's pillow, in his soup, even in the royal toilet. The king was furious, but he couldn't seem to stop Jokester.
And then, one day, the people of the kingdom discovered that the jokes left by Jokester were so funny that they
couldn't help but laugh. And once they started laughing, they couldn't stop.
</ScrollArea>
);
}
Documentation
Visit Docs
Credits
Built on top of:
License
MIT
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
458,824 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,451 starsreact/react
The library for web and native user interfaces.
252,458 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,624 stars