shadcn.io is not affiliated with official shadcn/ui
Alternating Device Frame Rows Features Block for React
Two alternating rows for a transit app, each pairing a sentence with a phone drawn as a ring on a hairline floor: the trip planner with line chips and the live arrivals with countdowns.
Installation
Overview
A features section for React with Base UI that shows a mobile app on a phone. Two rows share one page column: a badge, a heading, a sentence and a text link on one side, and a phone on the other, the sides swapping from row to row. The phone is built from CSS alone: its bezel is a ring, with no notch art, and it stands on a hairline floor inside a frame with + marks on its corners, so it never runs flush to the page's rails. The first screen is a trip planner with line chips and journey times; the second is a live arrivals list with a countdown per line. Both are drawn in greyscale from theme tokens. For consumer apps, mobile products and any feature that is best shown in a hand-held frame.
FAQ
How do I draw my own screens?
Each screen is a small component (PlannerScreen, ArrivalsScreen) that renders inside the shared Phone, which supplies the bezel, the status bar and the room for a tab bar. Fill it with your own rows, and change the data lists at the top of the file (JOURNEYS, ARRIVALS, LINE_CHIPS) to change what they show.
Why are the phones hidden from screen readers?
They are pictures of the product, not content: the heading and sentence beside each one say what it shows. The phone is marked as decorative and holds no links or buttons, so Tab moves from one row's link to the next.
Where do the links go?
Each row ends in a text link (href="#"): point it at the matching page. The arrow slides on hover and mirrors in a right-to-left layout. There is no button in this block, so no Shine Button.
Does it follow my theme?
Yes. The bezel, the screen and the floor use theme tokens only, so they are light on a light page and dark on a dark one in any preset. The one selected chip and the first arrival use the foreground colour as their accent.
Related
- Pro
Alternating Mockup Rows Features
Alternating rowsThree alternating bands for a support back office, each pairing a sentence with a browser window that holds a different admin screen: a filtered ticket table, a settings form with toggles and a weekly chart with its legend.
- Pro
Alternating Code Block Rows Features
Alternating rowsThree alternating bands for a typed event-stream client, each pairing a sentence with a code window that draws a different artifact: a call with its autocomplete popover, a config file with one line marked, and a command's output.
- Pro
Alternating Rows Features
Alternating rowsTwo plain alternating rows for a design-system kit in one box of shared hairlines: a permissions card with three toggles, and a notification card over a stack of avatars.
- Pro
Zigzag Screenshot Rows Features
Alternating rowsFour alternating feature rows for a team workspace, each with a badge, a title, three ticks and a framed drawing: a graph of linked docs, a rule builder, a global search and a live document.
- Pro
Split Phone Frame Hero
Mobile and mediaA split hero for a mobile app: copy, store links and social proof beside a phone frame that slides out of a hairline frame, cut off at its foot.
- Pro
Numbered Alternating Rows Features
Alternating rowsFour numbered steps for a feedback-triage tool as alternating bands, each with an outlined numeral, a paragraph and a drawing of the step on the other side of a split divider.