# Add

The add command is used to add UI components to the application: shadcn-svelte components and Vela's own.

### Syntax

```
$ vela ui add <components...>
```

```
$ vela ui add button
```

```
$ vela ui add button card dialog
```

Several components can be added in one go. They are installed into `src/lib/components/ui`, as ordinary files you own and can edit. Components that are already there are left alone.

### Options

- `--overwrite` - Replace components that already exist. Local edits to them are lost.

```
$ vela ui add --overwrite button
```

Only the named components are replaced; the components they depend on are still added only when missing.

### Vela components

Vela also ships components that shadcn-svelte doesn't have, such as `data-table`, `multiselect` and `geopoint`. They are added by name like any other, along with the components and npm packages they need:

```
$ vela ui add data-table multiselect
```

`data-table`, `column-header`, `faceted-filter` and `pagination` are built on TanStack Table v9 and install `@tanstack/table-core`. In a project still on version 8 they are refused until the package is upgraded; see [upgrading from v8](/generate/scaffold).

Run [`vela ui list`](/ui/list) to see every component you can add.

The [generators](/generate) add the components they need on their own, so this is for the ones you reach for yourself.