Skip to content

Customization here is a ladder, not a switch. Most tables stop at the second rung. The higher ones exist so that needing something unusual never means forking the library.

The levels

LevelWhat you changeWhere
0Props and option objectsEvery capability page
1Tokens and class namesTheming, Design tokens
2Cell, header and footer renderingCell building blocks
3Row rendering and propsRows and cells
4Whole parts replacedSlots
5Interaction middlewareHandler middleware
6Layout compositionOverriding structure
7The engine without the UIHeadless
8The core without ReactHeadless

Choosing a level

Go as low as the problem allows. A colour is a token, not a slot. A different empty state is a slot, not a fork. If you find yourself reimplementing behaviour that already exists in order to change how it looks, you have gone one level too high.

Recipes

Task-shaped walkthroughs live in Recipes.