Hive Hive
Sign in

fix(web): render flash messages inline

GitHub issue · Closed

Metadata
Source
tuist/hive #68
Updated
Jun 24, 2026
Domains
Hive
Details

What changed

  • Moved shared flash rendering from the root document layout into the dashboard, account, and operations content shells.
  • Replaced the fixed-position flash stack styling with an inline flash-region that sits above the page content.
  • Threaded LiveView flash assigns through every shared shell call site.
  • Updated the layout component tests around flash rendering and empty flash state.

Why

Floating status messages can cover unrelated controls and are easy to miss when they are disconnected from the page surface that produced them. Hive already uses inline Noora alerts on focused pages, so global flash messages now follow the same page-level feedback pattern.

Root cause

The root layout rendered every flash message as a fixed viewport stack. Redirect messages and action feedback therefore appeared as transient toasts even when they were page-level status.

Approach

The shared layouts own the content column, so they now render <.flash_group> before the slotted page content. The flash component still uses Noora alerts and the polite status live region, but no longer uses fixed positioning, overlay shadows, or pointer-event overrides.

Impact

Users see success and error feedback anchored above page content across dashboard, account, and operations pages. There are no route, data model, or migration changes.

Visual check

Inline flash status message

Validation

  • mix format
  • mix test test/hive_web/components/layouts_test.exs
  • mix compile --warnings-as-errors
  • git diff --check
  • Headless Chrome flow: signed in as the development test user, created a project, and captured the inline flash on /projects.
Comments

No GitHub comments yet.