# libtmux::validate_layout

- **Module:** libtmux
- **Package:** libtmux-cxx
- **Language:** C++
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-cxx/blob/3f93b021cb51e8349bfb9cecc6fd4091f6e79a0f/include/libtmux/layout.hpp#L31
- **Page:** https://libtmux.org/en/cxx/latest/reference/libtmux-validate_layout/

```
[[nodiscard]] expected<void, CommandFailure>
validate_layout(std::string_view layout, std::size_t minimum_panes = 1);
```

Check names, v1 saved-layout checksum, v1/v2 tree grammar and minimum cell count without I/O.

Names must be valid on at least one supported tmux version; Server::validate_layouts resolves version-dependent names and requires tmux 3.8 (including 3.8-rc) or newer for v2 JSON layouts. Saved input, including floating-pane metadata, is retained unchanged. The v2 reader follows tmux's restricted JSON syntax. Geometry and resizing remain tmux's responsibility. Empty layouts are invalid.

## Parameters

- `layout` (`std::string_view`)
- `minimum_panes` (`std::size_t`)
