> Source: https://laravilt.com/docs/tables/features/column-visibility

# Column Visibility

Allow users to toggle column visibility.

## Toggleable Columns

```php
<?php

use Laravilt\Tables\Columns\TextColumn;

TextColumn::make('created_at')
    ->toggleable();

TextColumn::make('updated_at')
    ->toggleable(isToggledHiddenByDefault: true);
```

## Non-Toggleable Columns

```php
<?php

use Laravilt\Tables\Columns\TextColumn;

TextColumn::make('name')
    ->toggleable(false);
```

## All Toggleable by Default

```php
<?php

use Laravilt\Tables\Table;

$table->toggleableColumns();
```

## Vue Component

Uses Radix Vue Checkbox:

```vue
<script setup>
import { CheckboxRoot, CheckboxIndicator } from 'radix-vue'
</script>
```

## API Reference

| Method | Description |
|--------|-------------|
| `toggleable()` | Make toggleable |
| `isToggledHiddenByDefault` | Hidden by default |
| `toggleableColumns()` | All toggleable |
