# `PhoenixKitProjects.Web.Components.PageHeader`
[🔗](https://github.com/BeamLabEU/phoenix_kit_projects/blob/v0.14.0/lib/phoenix_kit_projects/web/components/page_header.ex#L1)

Section heading + description + action button row used by every
admin LV in the projects module (Overview, Projects list, Tasks,
Templates, Project show, every form).

## Slots

  * `:actions` — the action buttons rendered on the right side.
    Multiple action slots stack horizontally with `gap-2`.
  * `:back_link` — optional link rendered above the heading (the
    form-page "← back to list" pattern). When present the heading
    drops the description (forms typically don't have one).

## Examples

    # List-page header. Use `<.smart_link>` so the action button honors
    # the LV's `:embed_mode` (real <a href> in navigate mode, emit
    # broadcast in emit mode). See dev_docs/embedding_emit.md.
    <.page_header title="Projects" description="All projects.">
      <:actions>
        <.smart_link
          navigate={Paths.new_project()}
          emit={{PhoenixKitProjects.Web.ProjectFormLive, %{"live_action" => "new"}}}
          embed_mode={@embed_mode}
          class="btn btn-primary btn-sm"
        >
          New project
        </.smart_link>
      </:actions>
    </.page_header>

    # Form-page header (back-link variant).
    <.page_header title={@page_title}>
      <:back_link>
        <.smart_link
          navigate={Paths.projects()}
          emit={{PhoenixKitProjects.Web.ProjectsLive, %{}}}
          embed_mode={@embed_mode}
          class="link link-hover text-sm"
        >
          <.icon name="hero-arrow-left" class="w-4 h-4 inline" /> {gettext("Projects")}
        </.smart_link>
      </:back_link>
    </.page_header>

# `page_header`

## Attributes

* `title` (`:string`) (required)
* `description` (`:string`) - Defaults to `nil`.
## Slots

* `actions`
* `back_link`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
