Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Principles Rail About Block for Ark UI

A split about section for a release-management tool: a sticky title at the start, and six principles as stations on a hairline rail, each opening to what it means and how it shows up.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

A principles section for React with Ark UI. The title and a sentence sit in the start column and stay in view on wide screens while you read; behind a split divider, six principles hang off a hairline rail, each with a numbered node. A station names the principle and its test as an italic question ("Could half of this ship today?"), and opens to what the principle asks and two lines on how it shows up in a week of releases. One station is open at a time, and the node of the open one fills. It's built from Guides and Accordion, with CSS transitions for the entrance and your theme's tokens for every colour. For an about page, a handbook or a careers page where each principle should be something a person can check, not a slogan. The company and its principles are invented for the example.

FAQ

How do I change the principles?

Edit PRINCIPLES at the top of the file: each entry has a title, a test question, a meaning sentence and a shows list of lines. Keep the test a concrete question a team can answer yes or no to; that is what separates a principle from a slogan. Six fit the rail on one screen and a half, but any number works: the rail's numbers come from the list's order.

How does the rail work, and is it accessible?

The stations are an ordered list, so the numbers are the list's own order and the round nodes are decoration. The hairline between them is drawn per station, so it follows however tall each one is. A node fills while its station is open; that is read from the trigger's expanded state, with no script of its own.

Why one open at a time?

The first station is open on load so the opened look shows at a glance. Opening another closes it, which keeps the rail close to one height and the page from jumping. Each trigger sits inside its own heading, so a screen reader can list the six principles by heading and open any of them with Enter or Space. The accordion keeps every panel in the page, so the text is there for search and find-in-page.

What stays in view on a wide screen?

Only the title and its sentence, with lg:sticky on the header, so they follow the reader down the rail. Below lg nothing is sticky: the header sits above the rail and scrolls away with the page.

How does it fit on a phone?

The header stacks above the rail, a hairline with a plus mark rules the two parts, and the rail keeps its nodes and its numbers at every width. Titles wrap to two lines rather than truncating, and nothing scrolls sideways at 320 pixels.

What moves, and what happens with reduced motion?

The header and the rail fade up once when the page loads, a station's plus turns into a minus, and its node fills, all with CSS transitions. With reduced motion they are off: the change is instant.