Strongtie Design System
Getting StartedComponents

Search documentation

Search for a command to run or a page to navigate to.

Getting Started
  • Introduction
  • Setup Guide
  • Package Installation
  • Styles Only (CSS)
  • Code Quality Setup
  • Resources
Guides
  • Framework Recommendations
  • Design Standards
  • Design Standards Examples
AI-Assisted Development
  • AI Agent Guide
  • AI Agent Skills
  • AGENTS.md Template
Registry
  • Getting Started
  • Combobox
  • Datepicker
  • MultiSelect
  • Tab Nav
  • Tree
Foundations
  • States
  • Variables
Migrations
  • Migration Guide
  • CDN Migration Guide
  • Telerik Migration
Governance
  • Governance Model
  • Contribution Model
Components
  • Accordion
  • Alert
  • Alert Dialog
  • Avatar
  • Badge
  • Breadcrumb
  • Button
  • Button Group
  • Calendar
  • Card
  • Carousel
  • Chart
  • Checkbox
  • Collapsible
  • Combobox
  • Command
  • Context Menu
  • Date Picker
  • Dialog
  • Drawer
  • Dropdown Menu
  • Empty
  • Field
  • Form
  • Hover Card
  • Input
  • Input Group
  • Input Otp
  • Item
  • Kbd
  • Label
  • Menubar
  • Multi Select
  • Navigation Menu
  • Pagination
  • Popover
  • Progress
  • Radio Group
  • Resizable
  • Scroll Area
  • Select
  • Separator
  • Sheet
  • Sidebar
  • Skeleton
  • Slider
  • Sonner
  • Spinner
  • Switch
  • Tab Nav
  • Table
  • Tabs
  • Textarea
  • Toaster
  • Toggle
  • Toggle Group
  • Tooltip
  • Tree
2026 Simpson Strong-Tie
  1. Docs
  2. Components
  3. Field

Field

PreviousNext

Field is a form field component that provides structure for inputs with labels, descriptions, and validation.

The Field component system provides a flexible, accessible way to build form interfaces with proper labeling, help text, error messaging, and validation feedback. It supports multiple layout orientations (vertical, horizontal, and responsive) through composable subcomponents.

This component integrates with form validation libraries and automatically handles accessibility attributes like aria-invalid, aria-describedby, and proper label associations. Use Field components to create consistent, accessible form experiences throughout your application.

Example

We'll never share your email with anyone else.

"use client"

import {
  Field,
  FieldDescription,
  FieldError,
  FieldLabel,
} from "@strongtie/design-system/field"
import { Input } from "@strongtie/design-system/input"

export function FieldDefault() {
  return (
    <Field>
      <FieldLabel htmlFor="email">Email</FieldLabel>
      <Input id="email" type="email" placeholder="you@example.com" />
      <FieldDescription>
        We'll never share your email with anyone else.
      </FieldDescription>
    </Field>
  )
}

Installation

npm install @strongtie/design-system
import { Field } from "@strongtie/design-system/field"

Components

This module exports the following components:

  • Field
  • FieldSet
  • FieldLegend
  • FieldGroup
  • FieldContent
  • FieldLabel
  • FieldTitle
  • FieldDescription
  • FieldSeparator
  • FieldError

Props

<Field>

PropTypeDefaultDescription
orientation"vertical" | "horizontal" | "responsive" | null-

<FieldLegend>

PropTypeDefaultDescription
variantlabel | legendlegend

<FieldError>

PropTypeDefaultDescription
errors({ message?: string; })[] | undefined-

Example

We'll never share your email with anyone else.

"use client"

import {
  Field,
  FieldDescription,
  FieldError,
  FieldLabel,
} from "@strongtie/design-system/field"
import { Input } from "@strongtie/design-system/input"

export function FieldDefault() {
  return (
    <Field>
      <FieldLabel htmlFor="email">Email</FieldLabel>
      <Input id="email" type="email" placeholder="you@example.com" />
      <FieldDescription>
        We'll never share your email with anyone else.
      </FieldDescription>
    </Field>
  )
}

Styling

Components can be styled using the className prop. The design system uses Tailwind CSS for styling.

Classes

CSS classes used by this component:

  • field

Accessibility

Ensure proper accessibility attributes are added when implementing this component.

EmptyForm

On This Page

ExampleInstallationComponentsProps<Field><FieldLegend><FieldError>ExampleStylingClassesAccessibility

Contribute

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