Infinite Scroll
Load the next page when a sentinel scrolls into view, with a loading row, an end of list message and a Load more button as the accessible fallback.
src/registry/ui/infinite-scroll.tsx/r/infinite-scroll.json
Installation#
bash
npx shadcn@latest add https://ui.minidev.pro/r/infinite-scroll.json
Usage#
tsx
import { InfiniteScroll } from "@/components/ui/infinite-scroll"
export function Example() {
return <InfiniteScroll />
}
API reference#
| Prop | Type | Default |
|---|---|---|
loadMore | (page: number) => Promise<{ items: T[]; hasMore: boolean }> | - |
renderItem | (item: T, index: number) => React.ReactNode | - |
rootMargin | string | "240px" |
className | string | - |
Dependencies#
Related tables components#
Audit Filter BarFilter toolbar for audit logs combining a search field, actor filter chips for all, admins or system, and a date range picker in one wrapping row.Audit Log EntrySingle audit log line: actor avatar, actor name, muted action text and the affected target, with a relative timestamp underneath. Stacks into a trail.Audit TrailBordered audit trail in React that renders a list of actor, action, target and time records as stacked log entries. Useful for security and admin history pages.Bulk Actions BarFloating Tailwind selection bar that appears once rows are selected, showing the count, your action buttons and a clear button. Sticks to the bottom edge.Column Visibility MenuColumns dropdown for data tables with a checkbox item per column. It returns the updated list of visible column ids so you can show or hide table columns.Data TableReact data table with sortable columns, row selection, a floating bulk actions bar, hover row actions, sticky header, three densities and skeleton loading.
All data table components