Files
warmbly/web
Matthew Meszaros eb902aa52a refactor(web): UserNav menu onto PopoverMenu — last shadcn dropdown is gone
Was still using the shadcn DropdownMenu — different border + shadow,
different open animation, different item heights. Stood out against
every other popover in the dashboard now that OrgSwitcher moved over.

Switched to PopoverMenu with side="top" (sidebar lives at the bottom,
menu has to rise) and align="start". Identity block (name + email)
becomes a short header inside the popover with the same hairline +
shadow as the rest. Settings / Billing / Team use PopoverMenuItem
with 12px icons; Log out is the danger variant so it reads as a
destructive action (red text on hover) without needing its own
treatment.

That's the whole dashboard on one popover primitive now — folders,
sort, accounts, schedule, org switcher, user menu — same micro-
animation, same surface.
2026-05-23 10:40:32 +00:00
..
2026-02-11 17:54:49 +01:00

Warmbly Web App

React + TypeScript frontend for Warmbly.

Stack

  • React 19
  • Vite (Rolldown)
  • TypeScript
  • TanStack Query
  • Zustand
  • Tailwind CSS 4

Prerequisites

  • Node.js 20+
  • pnpm 10+

Setup

cd web
pnpm install
cp .env.example .env

Run

pnpm dev

Default dev URL: http://localhost:5173

Quality Checks

pnpm lint
pnpm test:run
pnpm build

Project Layout

  • src/app route pages and layouts
  • src/components UI and feature components
  • src/lib/api API clients, hooks, and models
  • src/stores Zustand store slices