shadcn.io is not affiliated with official shadcn/ui
Vs Competitor Comparison Table Features Block for Solid
An eight-row comparison of a project suite with an unnamed typical tool, with real values, a monochrome check or dash, a count of where it leads and a Switch that shows only the rows that differ.
Installation
Overview
A comparison table for Solid with Ark UI. A centred header sits over a line that says how many features the product leads on, a Switch labelled "Show differences only", and a table across the rails: the feature, the product's value in a tinted column under a top rule, and an unnamed "typical tool's" value. Values are real: numbers, "Unlimited", a monochrome check or a dash, and one row where the other tool is ahead. Turning the Switch on hides the rows where the two match and updates the "shown" count; an unseen copy of the full table keeps the block's height, so nothing below moves. On a phone the three columns stay and the feature label wraps. It's built from Table, Switch and Guides, with CSS for the entrance and your theme's tokens for every colour. For products that get compared before they get bought.
FAQ
How do I change the rows?
Edit ROWS at the top of the file: each row has a feature, a value for each side and a winner of "us", "them" or "tie". A value is a text, a check or a dash with the words a screen reader reads for the mark. The "Ahead on 5 of 8" line is counted from the winners, and the filter keeps every row whose winner is not a tie.
Why are the check and the dash not green and red?
So the table follows any theme and reads without colour. A check is a foreground tick and a dash a muted line, each with text for assistive technology ("Included", "Not included"), and the column that is ours is tinted under a rule.
What does the Switch do, and is it announced?
It filters the visible table to the rows that differ. It is named "Show differences only", and the "n of 8 shown" text beside it is a polite live region, so a screen reader hears the new count. The Switch is controlled through its checked state and change handler.