Base UI (Angular) tags-input is a chip field bound to a string array. Enter, comma, or Tab add a tag; Backspace removes the last. Optional suggestions filter as you type. It implements ControlValueAccessor so ngModel and reactive forms work the same as other kit fields.
Install with npx base-ui-cli add tags-input.
Playground
<base-tags-input [(ngModel)]="tags" [suggestions]="suggested" placeholder="Add a tag…" [disabled]="false"> </base-tags-input>
Value: angular, tailwind
An empty array is the default. Disable the field when tags cannot be edited.
Site-wide VPAT-style notes live on the accessibility report.
Run the following command to add this component to your project:
npx base-ui-cli add tags-input
For AI agents
Copy a prompt with the registry name, CLI install, and import — or add the Base UI MCP server.
npx -y base-ui-mcp
Base UI provides standalone components. Import the exact elements you want to use into your component.
// Install: npx base-ui-cli add tags-input
// Paths are relative to aliases.components (default: src/app/components)
import { TagsInputComponent } from './tags-input/tags-input.component';
@Component({
selector: 'app-your-component',
imports: [
TagsInputComponent
],
template: `...`
})
export class YourComponent {} API for tags-input — generated from JSDoc in the library source.
| API | Member | Type | Default | Description |
|---|---|---|---|---|
base-tags-input | class | string | '' | Additional host classes. |
base-tags-input | label | string | '' | Visible label above the field. |
base-tags-input | placeholder | unknown | 'Add a tag…' | Placeholder shown when there are no tags. |
base-tags-input | suggestions | string[] | [] | Optional suggestion list filtered by the current query. |
base-tags-input | max | number | 0 | Maximum number of tags. `0` means unlimited. |
base-tags-input | allowCreate | boolean | true | Allow adding a tag that is not in `suggestions`. |
base-tags-input | disabled | boolean | false | Disables the field. Also set by Angular Forms via `setDisabledState`. |
base-tags-input | (tagsChange) | string[] | — | Emits whenever the tag list changes. |
Content