Skip to main content

A fully accessible text input component built with native HTML and Tailwind CSS. Capture user data with labels, helper text, error states, and icon support. Available in multiple sizes and color variants with prefix/suffix patterns for modern, theme-aware form designs.

Input components capture user data through text fields, email, password, and other input types. The Frutjam input system provides semantic HTML form controls with Tailwind CSS styling for multiple sizes, colors, and validation states. Designed for accessibility and responsive behavior, inputs integrate seamlessly with form validation libraries and frameworks.

Class Type Description
inputBaseStyled text input field
input-outlineStyleTransparent fill with a visible border
input-softStyleMuted tinted background
input-ghostStyleNo visible border until focused
input-dashedStyleDashed border style
input-squareStyleNo border radius
input-disabledModifierDisabled appearance for non-input elements
input-xsSizeExtra small
input-smSizeSmall
input-mdSizeMedium (default)
input-lgSizeLarge
input-xlSizeExtra large
input-2xlSize2× extra large
input-primaryColorPrimary theme color border
input-secondaryColorSecondary theme color border
input-accentColorAccent theme color border
input-neutralColorNeutral theme color border
input-infoColorInfo semantic color border
input-successColorSuccess semantic color border
input-warningColorWarning semantic color border
input-errorColorError semantic color border

Basic Usage

1
<input type="text" placeholder="Enter your text here" class="input">
1
<input type="text" placeholder="Enter your text here" className="input">

Input Sizes

html
1
2
3
4
5
6
<input type="text" class="input input-xs" placeholder="Xsmall">
<input type="text" class="input input-sm" placeholder="Small">
<input type="text" class="input input-md" placeholder="Medium">
<input type="text" class="input input-lg" placeholder="Large">
<input type="text" class="input input-xl" placeholder="Xlarge">
<input type="text" class="input input-2xl" placeholder="2XLarge">

Input Colors

html
1
2
3
4
5
6
7
8
9
<input type="text" class="input" placeholder="Default">
<input type="text" class="input input-primary" placeholder="Primary">
<input type="text" class="input input-secondary" placeholder="Secondary">
<input type="text" class="input input-accent" placeholder="Accent">
<input type="text" class="input input-neutral" placeholder="Neutral">
<input type="text" class="input input-info" placeholder="Info">
<input type="text" class="input input-success" placeholder="Success">
<input type="text" class="input input-warning" placeholder="Warning">
<input type="text" class="input input-error" placeholder="Error">

Input Styles

html
1
2
3
4
5
<input type="text" class="input" placeholder="Default">
<input type="text" class="input input-outline" placeholder="Outline">
<input type="text" class="input input-soft" placeholder="Soft">
<input type="text" class="input input-dashed" placeholder="Dashed">
<input type="text" class="input input-ghost" placeholder="Ghost">

Input Square

Use input-square for fixed-width single-character inputs like OTP or PIN fields.

html
1
2
3
4
<input type="text" class="input input-square input-xs" maxlength="1" placeholder="0">
<input type="text" class="input input-square input-sm" maxlength="1" placeholder="0">
<input type="text" class="input input-square input-md" maxlength="1" placeholder="0">
<input type="text" class="input input-square input-lg" maxlength="1" placeholder="0">

Disabled Input

html
1
2
<input type="text" class="input" placeholder="Enabled input">
<input type="text" class="input input-disabled" placeholder="Disabled input" disabled>

Input with Label

html
1
2
3
4
5
6
7
8
9
<label>
  <span>Email address</span>
  <input type="email" class="input input-outline w-full" placeholder="you@example.com">
</label>

<label>
  <span>Password</span>
  <input type="password" class="input input-outline input-primary w-full" placeholder="Enter password">
</label>