Skip to content

Bookmark Tabs

Numbered paper tabs with a bookmark ribbon and an inset content panel.

LIVE PREVIEWInteract with the component
Just React. No extra dependencies.

Copy the component and its CSS module into your project.

CSS Modules

Usage

Matches your current playground settings.

jsx
import BookmarkTabs from "./BookmarkTabs";
export default function Example() {
return (
<BookmarkTabs
items={[
{
"value": "form",
"label": "Form",
"content": "Quiet shapes.\nConsidered from every angle."
},
{
"value": "material",
"label": "Material",
"content": "Warm paper, brushed metal\nand a little imperfection."
},
{
"value": "detail",
"label": "Detail",
"content": "Small decisions.\nLasting impressions."
}
]}
defaultValue={"form"}
label={"Design notes"}
color={"#caa682"}
background={"#292421"}
/>
);
}

Using Bookmark Tabs

Supply a unique value, a short label and your content for every item. Use value and onValueChange to keep tab selection in application state.

Arrow keys move between tabs, while Home and End select the first or last tab. Hidden panels stay mounted so form values and local child state are preserved.

Props

NameTypeRequiredDefaultDescription
itemsArray<{ value, label, content }>No[]Tabs with unique values, labels and panel content.
valuestringNoundefinedControlled selected tab value.
defaultValuestringNoundefinedInitial selected value, falling back to the first tab.
onValueChangefunctionNoundefinedReceives the selected item value.
labelstringNo"Sections"Accessible name for the tab list.
colorstringNo"#caa682"Selected tab and panel edge colour.
backgroundstringNo"#292421"Inactive tab and content panel colour.
classNamestringNo""Additional classes on the root element.
styleCSSPropertiesNoundefinedInline styles for sizing, typography and appearance.

Related components

Pagination Rail

Navigation

A raised selection moves through a compact row of numbered page controls.

Layered chevron tabs create a compact trail with a distinct current page.

Folding Menu

Navigation

Numbered navigation panels unfold beneath a compact, tactile trigger.

Path Stepper

Navigation

Numbered stops connect into a clean vertical route with completed and current states.