PUI Logo

PUI Components

Headless Components

PUI supports three usage levels:

Level 1: Low-level Hooks - Direct Floating UI access

<.popover_base phx-hook="PUI.Popover">
<.button>Trigger</.button>
<:popup class="custom">Content</:popup>
</.popover_base>

Level 2: Unstyled Components - Behavior without styles

<.menu_button variant="unstyled" class="my-btn">
Open
<:item class="my-item">Profile</:item>
</.menu_button>

Level 3: Styled Components - Ready-to-use defaults

<.menu_button variant="secondary">
Open
<:item>Profile</:item>
</.menu_button>

See Headless Usage Guide for details.