Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Inset Tray Strip Logos Block for React

A tray strip for a paint-matching product: an outline badge and six linked customer wordmarks in two rows of three, inside a tinted shell that holds a lighter panel.

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

An inset logo strip for React with Base UI. A tinted shell holds a lighter panel (card in card), so the strip gains depth from its frame instead of a dark panel and follows your theme in light and dark. An outline badge labels the panel ("Matched in 1,400 paint shops") and six customer wordmarks sit under it in two rows of three. Each wordmark is a link to that customer's story: muted at rest, and on hover or keyboard focus it turns to full strength with an underline under the name. Two across on a phone. The tray is built from the catalog's Frame and Badge.

FAQ

Why is it called dark inset if it follows the theme?

The slug keeps the name of shadcn.io's black tray, but the block follows your theme instead of forcing a dark panel: depth comes from the nested Frame and FramePanel (a tinted shell around a bg-card panel), which reads as a raised tray in light and dark.

How do I change the logos?

Edit CUSTOMERS: each entry is a name, an icon and a lettering. Six fills two rows in three columns; on a phone they are three rows of two.

How does keyboard focus look?

Each link has a visible focus ring and the same underline as the hover state, drawn with group-focus-visible, and the colour turns to full strength for the focused item. The six links are six tab stops, in reading order.

Is it accessible?

The list is a real list, each link's name is the customer's name as text and the icon is hidden from assistive technology. The names use text-muted-foreground at full strength, which passes WCAG AA on the card. The underline is not the only cue: focus also shows a ring.

What moves?

The block fades up once when the page loads, with a CSS transition, and each logo eases to the text colour on hover. With reduced motion the entrance is off and the hover colour changes at once.

  • Pro

    A single row of twelve customer wordmarks for a home-inspection report tool, riding in a raised tray with a pause button, each tile lifting under the pointer.

  • Pro

    A four by four wall of customers for an alumni-network product in an inset tray, with fifteen wordmarks and a last cell that is the Shine Button, See all 4,000+ customers.

  • Pro

    The quietest logo strip: one whisper line for a restaurant-reservation product and five large wordmarks in five equal columns, with no heading, no cells and no lines but the page's top rule.

  • Pro

    A quiet strip for directly under a hero: one sentence for a job board on its own line and six open wordmarks beneath it, with no cells, no heading and no lines but the page's top rule.

  • Pro

    A bento for a data warehouse in a card-in-card shell: four customers that each show the drop in slow queries as a figure and a falling trend line, beside one customer story set at the end.

  • Pro

    A slim ribbon for the foot of a page, above the footer: a label at the start and eight tiny customer wordmarks along one line, under the page column's top rule.