shadcn.io is not affiliated with official shadcn/ui
Category Grid Tab-Filtered Logos Block for React
Four pill tabs (All, Growers, Co-ops, Advisers) over a wall of eight customer wordmarks in shared hairline cells, for a farm planning tool.
Installation
Overview
A tab-filtered logo wall for React with Base UI. A centred header, "Planned on Tillage by 3,100 farms" and one sentence, sits over a pill-shaped tab list with four tabs: All, Growers, Co-ops and Advisers. Each tab swaps in its own wall of eight customer wordmarks in cells that share their hairlines, running from rail to rail and ending the block, so the next section's top rule closes it. The panels all sit in one grid cell, so the wall keeps the same height whichever tab is open and nothing below it moves. Every wordmark is real text in its own lettering with an icon beside it, above it, after it, in a ring or knocked out of a badge, muted until hovered. Two columns on a phone, four from md; the pills scroll sideways on a narrow screen. Built from Tabs and Guides, with CSS transitions for the entrance and your theme's tokens for every colour. For products that serve a few kinds of customer and want each to see people like themselves.
FAQ
How do I change the tabs and the customers?
Edit CUSTOMERS at the top of the file: each entry is a group (growers, coops or advisers), an icon (any Lucide icon), a name and a style, the index of one of the logo styles in STYLES. A tab shows the customers of its group, and the All tab shows ALL, a hand-picked spread. Keep every group at eight, so each tab fills the wall and no cell is empty, and add a tab by adding an entry to TABS and a group of eight.
How does it work with a keyboard and a screen reader?
The pills are a real tab list named "Customer type": the arrow keys move between tabs (mirrored in a right-to-left layout), Home and End jump to the first and last, and Tab moves on into the open panel. Each panel is a list named "Customers" whose items read as the company names; the icons are hidden from assistive technology. Focusing a tab selects it, as on the other libraries, so an arrow key both moves and switches.
Why doesn't the page move when I switch tabs?
Every tab's wall is also rendered once more, unseen, stacked in the same grid cell as the real panel, hidden from assistive technology and the keyboard (aria-hidden and inert). The cell is as tall as the tallest of them, so switching only swaps what shows and nothing below it moves. Panels that aren't open are not in the page's accessibility tree twice.
How do I use real company logos?
Replace the icon and name in Wordmark with the company's logo, at about the same height for all of them (h-6 to h-8). An inline svg drawn in currentColor, with role="img" and an aria-label, keeps the muted colour and the hover. The names here are fictional placeholders.
Related
- Pro
Tab Counts Tab-Filtered Logos
Tabs and filtersFour pill tabs with a count on each, in a hairline band over a caption and a grid of customer wordmarks in cells set apart, for a design tokens tool.
- Pro
Animated Underline Tab-Filtered Logos
Tabs and filtersThree flat tabs on a ruled band with a sliding underline, over six customer wordmarks in cells set apart, for a property listings site.
- Pro
Sidebar Nav Tab-Filtered Logos
Tabs and filtersA vertical list of four trades at the start and, past a split divider, the open trade's six customer wordmarks in an open grid, for a construction takeoff tool.
- Pro
A wall of eighteen customer wordmarks for a month-end close tool, under a compact header with the customer count, in cells that share their hairlines from rail to rail.
- Pro
A wall of twelve garden-shop customers in square cells that share their hairlines from rail to rail, each with a large icon, its name and a tiny line saying what kind of shop it is.
- Pro
Categorized FAQ
Topics and filtersA topic-tabbed FAQ for a bookkeeping app: a compact header, a band of line tabs with a count on each, and one accordion per topic.