Paginate with rowPaginationFeature and paginatedRowModel or manualPagination. Load for pageIndex/pageSize state, rowCount/pageCount, unknown next-page limits, already-paginated server data, or autoResetPageIndex surprises.
65
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./packages/table-core/skills/pagination/SKILL.mdThis skill builds on core, table-features, and client-vs-server. Choose client slicing or server pages, never both accidentally.
import {
createPaginatedRowModel,
rowPaginationFeature,
tableFeatures,
} from '@tanstack/table-core'
export const features = tableFeatures({
rowPaginationFeature,
paginatedRowModel: createPaginatedRowModel(),
})
export const initialState = { pagination: { pageIndex: 0, pageSize: 25 } }const serverOptions = { manualPagination: true, rowCount: response.total }Pass one already-processed page and either rowCount or pageCount.
Wrong: const options = { data: allRows, manualPagination: true }
Correct: const options = { data: requestedPageRows, manualPagination: true, rowCount: totalRows }
Manual pagination trusts the provided data as the current page.
Source: https://github.com/TanStack/table/issues/4917
Wrong: const options = { data: pageRows, manualPagination: true }
Correct: const options = { data: pageRows, manualPagination: true, rowCount: 1234 }
Without a count, last-page and next-page availability cannot reflect the server dataset.
Source: packages/table-core/src/features/row-pagination/rowPaginationFeature.types.ts
Wrong: onPaginationChange: setPagination
Correct: const options = { onPaginationChange: setPagination, autoResetPageIndex: false }
Client data and processing changes may reset page index; configure the policy when product state must retain it.
Source: docs/framework/react/guide/pagination.md#auto-reset-page-index
Inspect node_modules/@tanstack/table-core/dist/features/row-pagination/ for reset rules, count calculation, and navigation APIs.
9e523bc
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.