shadcn.io is not affiliated with official shadcn/ui
Hover Accordion Mockup Split Features Block for React
A features section for an operations console: an accordion of four features whose open row swaps the console screen drawn in a framed figure beside it, by pointer, focus or tap.
Installation
Overview
A features section for React with Base UI, where the list and the picture answer each other. A compact header sits over a band split by a hairline that meets the page's top rule with a plus mark. On the start side an accordion lists four features of Spoolhouse, an operations console (live queues, an incident timeline, runbooks and an on-call rota); on the end side a framed figure shows that feature's screen. Pointing at a row, focusing it with the keyboard or tapping it opens it and cross-fades the drawing, so the figure never changes size. It's an accordion, a badge and the Guides line kit, with your theme's tokens for every colour and no button. For consoles, dashboards and any product that is easiest to show one screen at a time.
FAQ
How do I change the features and screens?
Edit FEATURES at the top of the file for the rows (a title, an icon, a sentence and two badges) and write each screen as a small component beside it: QueuesScreen, IncidentScreen, RunbookScreen and RotaScreen. A screen shows when the open row's id matches the Layer it sits in, so a new feature needs a row, a screen and a layer with the same id.
Does it only work on hover?
No. Pointing at a row opens it, but so does focusing it with Tab or the arrow keys and so does a tap or a click, because the open row is plain state shared by the accordion and the figure. The rows are real accordion buttons, so a screen reader hears the row that is open.
Why can't I close the open row?
One row is always open, because the figure always shows a screen. Opening another row closes the first. Closing the open row is ignored: the change handler keeps the previous row when it receives none.
Are the screens real?
They are drawings, built from the page's own tokens in greyscale and hidden from assistive technology, so everything they say is also in the row's sentence. They never change the layout: all four sit in one grid cell and only the open one is visible.
What moves, and what happens with reduced motion?
The header and the band fade up once when the page loads, the open row's panel slides open, the screens cross-fade, and the live dot in the queues screen pulses. With reduced motion the fade-up, the cross-fade and the pulse are off and the screens swap instantly.
Related
- Pro
Accordion FAQ Features
Tabs and accordionsA features section for an API gateway told as six capability questions in an accordion beside a sticky side header, each answer a sentence and a small drawing of the capability at work.
- Pro
Horizontal Panel Concertina Features
Tabs and accordionsA features section for a dashboard builder: six panels side by side in one rounded frame, five folded to a strip with a sideways label and one open to a headline, a sentence and a small drawing.
- Pro
Segmented Accordion Mockup Features
Tabs and accordionsA features section for a block editor: a segmented control picks a job, an accordion lists its four features, and the one editor screen beside it rings and spotlights the part of the page the open row names.
- Pro
Tab Swap Split Showcase Features
Tabs and accordionsA features section for a release tool: a line tab switch (Plan, Ship, Review) that swaps one split band, with a drawing flush to the start rail and the copy on the end side.
- Pro
Vertical Tab Accordion Preview Features
Tabs and accordionsA features section for an admin console in three panes: a vertical tab rail of five categories, an accordion of that category's features, and a console screen on the end side that outlines the row of the open feature.
- Pro
Animated Reveal Features
Tabs and accordionsA features section for a dashboard builder with a framed drawing of its editor at the start and four steps as vertical tabs at the end: each step adds a layer to the drawing and keeps the ones before it.