# Beste UI

> Beautiful, accessible blocks, pieces and components for shadcn/ui and Tailwind CSS, built for React and Next.js. Install one with the shadcn CLI and the code is yours to edit: no runtime dependency, nothing to upgrade.

Markdown rendition of https://ui.beste.co/piece/form4. Every page on the site has one: add `.md` to any address, or send `Accept: text/markdown`.

Whole catalog for LLMs: https://ui.beste.co/llms.txt. Registry index: https://ui.beste.co/r/registry.json

---
1. /
2. [Pieces](/pieces)
3. /
4. [Form](/pieces/form)
5. /
6. Required Field

# Required Field

Labeled input flanked by a red asterisk and a Required pill, plus an explanatory hint below.

Full legal name\*Required

Oud Beste

We use this for invoices and tax documents.

CLICode

Base UI

![](https://oud.pics/sm/l/npm.svg)`npx shadcn add https://ui.beste.co/piece/r-base/form4`

New here? Read the [installation guide](/docs/installation).

Import & useCopy

```
import { Form4 } from "@/components/beste/piece/form4";

<Form4
  label="Full legal name"
  requiredLabel="Required"
  placeholder="As shown on your ID"
  value="Oud Beste"
  hint="We use this for invoices and tax documents."
/>
```

## More Form pieces

[View all Form](/pieces/form)

[](/piece/form1)

Workspace name

Mira & Co.

Shown on invoices and in the team directory.

### Labeled Input

Standard text field with a label on top and a muted helper line under the control.

[](/piece/form28)

Display nameSaved

Beste Sözen

Auto-saves as you type.Saved just now

### Autosave Field

Inline field with an autosave status pill that shifts between saved, saving, and unsaved dot colors.

[](/piece/form11)

Enter the 6-digit code

4

7

1

9

We sent it to m•••@beste.co just now.

### OTP Input

Six-cell verification code field with an active cell that rings and a caret on the next empty slot.

[](/piece/form33)

I agree to the [Terms of service](#) and [Privacy policy](#).\*

### Consent Row

Legal consent card with a custom checkbox, inline underlined policy links, and a red asterisk when required.

[](/piece/form19)

Mobile number

🇹🇷+90532 000 12 34

We'll text a login code if you enable 2FA.

### Phone Input

Phone field with a flag and dial-code chooser on the left, then the national number in mono.

[](/piece/form2)

Work email

mira@acme

Enter a valid email address, including the domain.

### Error State

Invalid field with a rose ring, alert icon inside the input, and a descriptive error under it.

## Ship the interface, keep the code.

New blocks, pieces and components every week. Install one with a command and it is yours to edit. No runtime dependency, no upgrade path to fight.

[Browse the libraryBrowse the library](/blocks)[See pricingSee pricing](/pricing)

### Library

* [Blocks](/blocks)
* [Pages](/pages)
* [Pieces](/pieces)
* [Components](/components)
* [Search](/search)

### Learn

* [Docs](/docs)
* [AI & MCP](/docs/mcp)
* [Blog](/blog)
* [Free tools](/tools)
* [What's new?](/changelog)
* [Website Builder](https://beste.co)

### More

* [Pricing](/pricing)
* [Referrals](/referrals)
* [License](/license)
* [GitHub](https://github.com/beste-co/beste-ui)

### Shadcn Blocks

* [Shadcn Hero Blocks](/blocks/hero)
* [Shadcn Feature Blocks](/blocks/feature)
* [Shadcn Pricing Blocks](/blocks/pricing)
* [Shadcn CTA Blocks](/blocks/cta)
* [Shadcn FAQ Blocks](/blocks/faq)
* [Shadcn About Blocks](/blocks/about)
* [Shadcn Stats Blocks](/blocks/stats)
* [Shadcn Footer Blocks](/blocks/footer)
* [Shadcn Navigation Blocks](/blocks/navigation)
* [Shadcn Auth Blocks](/blocks/auth)
* [Shadcn Ecommerce Blocks](/blocks/ecommerce)
* [Shadcn Portfolio Blocks](/blocks/portfolio)
* [Shadcn Showcase Blocks](/blocks/showcase)
* [Shadcn Careers Blocks](/blocks/careers)
* [Shadcn Onboarding Blocks](/blocks/onboarding)
* [Shadcn Coming Soon Blocks](/blocks/coming-soon)
* [Shadcn Post Blocks](/blocks/post)
* [Shadcn Legal Blocks](/blocks/legal)
* [Shadcn Workflow Blocks](/blocks/workflow)
* [Shadcn News Blocks](/blocks/news)

© 2026, [Beste](https://beste.co). All rights reserved.