Strong-Tie UXR Documentation
Research Repository

Command Palette

Search for a command to run...

Q4 2025
  • Platform Model (BIM) Viewer
  • (Preliminary Report) Project Hub Research
  • Personas
Q3 2025
  • Estimating Tools Unification
  • Outdoor Living Solutions Pro Tier
  • Director Engineering Tab
  • Roles and Permissions
  • Cornerstone Point Offsetting Discovery
  • Truss Design Seal Submittal Workflow
Q2 2025
  • CS Engineer
  • Digital Solutions CSAT/NPS Survey
  • Past Communication Research
  • Director Admin Settings
  • Director Pricing
Q1 2025
  • License and Account Management
  • Estimating JTBD Survey
  • Product Materials Catalogs
  • Truss Studio Settings / Envdata
  • Residential Construction Ecosystem
  • Cloud Director Project Creation
Q4 2024
  • Platform Discovery Research Findings
  • Director Settings
  • Truss Studio Ribbon Bar
  • Cloud Director Roles and Permissions
  • Deck Planner Pro Features
Q3 2024
  • ICS Assessment and Platform Features
  • Document Management Services
  • LotSpec for Revit
  • LotSpec for Revit User Personas
Q2 2024
  • Platform Sprint
  • LBM Estimating Digital Portal Discovery
  • LBM Q2 Customer Interviews
  • Fastener Designer Prototype Testing
  • Production Scheduler
  • LotSpec for Revit Competitive Analysis
  • Field Verification
  • Kentley Insights Truss Market Research
Q1 2024
  • LBM Takeoff Tool MVP Testing
  • Anchor Finder
  • LBM Q1 Customer Interviews
  • Customer Connectivity
  • Reporting Manager Modal
Q4 2023
  • PDP Heatmapping
  • Pipeline Modernization
  • Truss Studio Envdata
  • Enterprise User Roles Prototype Test
Q3 2023
  • Reporting Manager Parameters
  • Customer Portal Jump
Q2 2023
  • Internal UX Team Satisfaction Survey
  • PDP Navigation
2026 Simpson Strong-Tie
  1. Docs
  2. Getting Started
  3. ShadCN with Tailwind

ShadCN with Tailwind

PreviousNext

Install shadcn/ui components that follow Strongtie design standards for maximum flexibility and control.

This is the recommended approach for new React applications. You own the component code, customize freely, and get the full shadcn/ui experience with Strongtie branding.

Why this approach? Components are copied into your project, not installed as dependencies. You own the code and never worry about breaking changes from package updates.

What You Get

  • Component ownership - Code lives in your project, fully customizable
  • Tree-shaking - Only ship what you use
  • Accessibility - Built on Radix UI (or Base-UI) primitives
  • TypeScript - Full type safety
  • AI-Native - All major AI assistants know shadcn natively

Quick Start (Recommended)

The fastest way to get started is using shadcn's preset feature:

npx shadcn@latest create --preset "https://ui.shadcn.com/init?base=radix&style=vega&baseColor=neutral&theme=neutral&iconLibrary=lucide&font=inter&menuAccent=subtle&menuColor=default&radius=default&template=vite" --template vite

This creates a new Vite + React project with Strongtie design standards pre-configured.

Already have a project? Follow the manual setup steps below.

Manual Setup

Follow the guide from shadcn

Start using components

Add components using the shadcn CLI:

npx shadcn@latest add button card dialog

Components are copied to your components/ui/ directory where you can customize them.

Best Practice: When adding custom functionality, create abstracted components instead of editing shadcn components directly. For example, if you need a button with custom props, create components/custom-button.tsx that wraps components/ui/button.tsx. This keeps shadcn components pristine and makes updates easier.

AI-Native Development

All major AI coding assistants (Claude, ChatGPT, Cursor, etc.) have native knowledge of shadcn/ui. Just ask "use shadcn to add a button" and they know exactly what to do. Plus, with the shadcn MCP server available, AI agents can directly add and modify components in your project—making UI development faster and more intuitive than ever.

Radix UI vs Base-UI

shadcn/ui supports two UI primitive libraries:

Radix UI (Default)
  • Extensive documentation
  • Large community
  • Widely adopted
  • Multiple packages
Base-UI
  • Single package
  • Lighter bundle
  • From MUI team
  • Growing community

To use Base-UI instead:

npx shadcn@latest create --preset "https://ui.shadcn.com/init?base=base&style=vega&baseColor=neutral&theme=neutral&iconLibrary=lucide&font=inter&menuAccent=subtle&menuColor=default&radius=default&template=vite" --template vite

Both produce the same visual output. The difference is the underlying accessibility primitives.

Customizing Components

Since you own the code, modify components directly:

components/ui/button.tsx
// Add custom variants to match your needs
const buttonVariants = cva(
  "inline-flex items-center justify-center rounded-md text-sm font-medium transition-all",
  {
    variants: {
      variant: {
        default: "bg-primary text-primary-foreground hover:bg-primary/90",
        destructive: "bg-destructive text-white hover:bg-destructive/90",
        outline: "border bg-background hover:bg-accent",
        secondary:
          "bg-secondary text-secondary-foreground hover:bg-secondary/80",
        ghost: "hover:bg-accent hover:text-accent-foreground",
        link: "text-primary underline-offset-4 hover:underline",
        // Add your own
        brand: "bg-orange-500 text-white hover:bg-orange-600",
      },
      // ...
    },
  }
)

Troubleshooting

Components don't match expected styling

Ensure your CSS variables match the example above. shadcn components rely on variables like --background, --foreground, --primary, etc.

TypeScript errors after adding components

  1. Restart your TypeScript server: Cmd/Ctrl + Shift + P > "TypeScript: Restart TS Server"
  2. Verify path aliases in tsconfig.json:
{
  "compilerOptions": {
    "paths": {
      "@/*": ["./*"]
    }
  }
}

Tailwind classes not applying

  1. Verify globals.css is imported in your root layout
  2. Check content paths in your Tailwind config
  3. Restart your dev server

Next Steps

  • Browse shadcn components
  • Explore component examples
Installing the @strongtie/design-system PackageStrongtie Registry

On This Page

What You GetQuick Start (Recommended)Manual SetupAI-Native DevelopmentRadix UI vs Base-UICustomizing ComponentsTroubleshootingComponents don't match expected stylingTypeScript errors after adding componentsTailwind classes not applyingNext Steps

Contribute

  • Report an issue
  • Request a feature
  • Edit this page