EnterUI
DocsComponentsThemesExamplesDonation
Get Started
      • Input
      • InputGroup
      • PhoneInput
      • PasswordInput
      • NumberInput
      • Stepper
      • TextArea

Default usage

  1. EnterUI
  2. /Docs
  3. /Inputs
  4. /Form Controls
  5. /Text Inputs
  6. /Input
Updated 13 October 2026

Input

A single-line text input with polished focus and invalid states.

Input defines how EnterUI handles a single-line text input with polished focus and invalid states, including default structure, accessible states, and token-driven styling.

#Default usage

Input states

Default, disabled, and invalid states share the same control rhythm.

Code
<VStack align="stretch" gap={12} fullWidth>
  <Input aria-label="Package name" defaultValue="@froggdesign/enter-ui-react" />
  <Input aria-label="Disabled package" disabled defaultValue="@froggdesign/enterui-locked" />
  <Input aria-label="Invalid package" invalid defaultValue="invalid scope" />
</VStack>

#Import

Code
import { Input, VStack } from "@froggdesign/enter-ui-react";

#Patterns

With field

Use Field when the control needs label, help, or error text.

Used in package metadata.

#Accessibility

Input renders a native input. Provide a visible Label or an aria-label. The invalid prop maps to aria-invalid.

#API

  • invalid toggles invalid styling and aria state.
  • All native input props are supported.
  • Use className for local control styling.

#Styling

The control uses the shared medium (8px) input radius, including focus and invalid states. PhoneInput, PasswordInput, and NumberInput inherit this shape without page-level styling.

Every exported component accepts className when it renders an element. EnterUI styles use .eui-* classes and --eui-* variables mapped from FroggDesign theme tokens.

PreviousValidationSummary
NextInputGroup
On this page
  • Default usage
  • Import
  • Patterns
  • Accessibility
  • API
  • Styling