Comparator Table
A tiered feature-comparison table — plan columns with CTAs over grouped feature rows whose cells are checkmarks or text values.
New in 0.1.1 Version the current component and shared source, including explicit localization semantics where applicable.
Installation
npx payload-components add comparator-tableWhat it installs
Copies 3 source files into your project:
src/blocks/shared/comparatorFields.tssharedsrc/blocks/ComparatorTable/config.tssrc/blocks/ComparatorTable/Component.tsx
…and makes 4 edits to wire the block into your project:
| Registers the block | src/collections/Pages/index.ts |
| Maps the renderer | src/blocks/RenderBlocks.tsx |
| Regenerates types | src/payload-types.ts |
| Regenerates the admin import map | src/app/(payload)/admin/importMap.js |
src/collections/Pages/index.tssrc/blocks/RenderBlocks.tsxsrc/payload-types.tssrc/app/(payload)/admin/importMap.jscomparatorFields.ts is shared source for this component family. Components that install the same path reuse that local copy, and re-running an install never overwrites a copy you have changed.Re-running the CLI install detects existing source and wiring, then records install state in .payload-components/state.json.
Content model
title and description come from the shared Comparator family base
(src/blocks/shared/comparatorFields.ts); the plans columns and the features matrix are
specific to this variant. Each feature row holds one values cell per plan, in the same order as
plans — keep the two aligned.
Prop
Type
Each item in plans carries:
Prop
Type
Each item in features carries:
Prop
Type
Usage
ComparatorTable block to its layout.RenderBlocks on the frontend, fully typed — no extra wiring.Requirements
- Target
- payload-website-starter, payload-blocks-app
- Payload
- v3
- Next.js
- 15 / 16
- shadcn UI
- badge
Your project must already expose components.json, src/payload.config.ts — the surfaces patched by payload-components add. The CLI verifies this against the support matrix before touching anything.
Layout adapted from tailark/blocks (MIT), retokenized onto the Payload Components design system.
In this family
comparator-tablecurrentcomparator-gridcomparator-stack