Use-Case Mega Navbar

About this block

Use-Case Mega NavbarPRO

Navbar with a marked wordmark and a pill-highlighted trigger that drops a floating rounded mega panel — a parenthetical label over a 3x2 grid of icon use-case cards. Sign-in pill plus a primary CTA.

Navbar with a pill-shaped wordmark row where a trigger item drops a floating, rounded mega panel instead of a full-bleed strip: a parenthetical badge sits above a 3x2 grid of icon use-case cards. A muted sign-in pill sits next to the primary CTA button on the right.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/navbar61?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/navbar61?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/navbar61.tsx, the badge7 and button12 components it uses for the panel badge and its CTA, and its dependencies.

Quick start

The installed file exports navbar61Demo alongside the block: the exact props behind the preview above. Spread it to get a working navbar in one line.

tsx
import { Navbar61, navbar61Demo } from "@/components/beste/block/navbar61";

export default function Layout() {
  return <Navbar61 {...navbar61Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { Rocket, Layers } from "lucide-react";
import { Navbar61 } from "@/components/beste/block/navbar61";

export default function Layout() {
  return (
    <Navbar61
      brand="Northwind"
      items={[
        {
          label: "Who it's for",
          href: "/who",
          panel: {
            badge: { label: "By the room you sit in" },
            cards: [
              { icon: Rocket, title: "Seed-stage builders", description: "Ready before the raise closes.", href: "/seed" },
              { icon: Layers, title: "Product squads", description: "Screens shipped with your engineers.", href: "/product" },
            ],
          },
        },
        { label: "Notebook", href: "/notebook" },
      ]}
      login={{ label: "Sign in", href: "/login" }}
      button={{ label: "Book a call", href: "/contact" }}
    />
  );
}

Props

PropTypeDefaultDescription
brandstringWordmark text; omitted entirely when not set
itemsNavItem[][]Top-level nav entries, plain links or mega-panel triggers
login{ label: string; href: string }Muted pill link rendered before the CTA; hidden entirely when not set
button{ label: string; href: string }Primary pill CTA; hidden entirely when not set
classNamestringExtra classes for the outer <header>
ts
type NavItem = { label: string; href: string; panel?: MegaPanel };

type MegaPanel = {
  badge: { label: string };
  cards: PanelCard[];
};

type PanelCard = {
  icon: LucideIcon;
  title: string;
  description: string;
  href: string;
};

An item only opens a panel when panel is set; otherwise it renders as a plain link.

Behavior notes

  • Items with panel render as a rounded-full button: hovering (onMouseEnter) or clicking opens the panel; clicking again while open closes it. Hovering a plain link resets activeIndex, closing any open panel.
  • Like the mega panels are always mounted in the DOM and switched between invisible/visible with an opacity/translate transition rather than conditionally rendered, so panel content is present in the server-rendered HTML.
  • The panel closes on outside pointerdown or on Escape, via a document-level listener attached only while a panel is open.
  • Unlike a full-bleed strip, the panel is a bordered, rounded, shadowed card constrained to the max-w-7xl container, floating just below the nav row.
  • The card grid uses md:grid-cols-3 (3x2 for a 6-card panel), each card an icon square, a title, and a description, the whole card wrapped in a link.
  • The mobile menu (below lg) lists each panel's card titles as plain indented links beneath the item's own link; it drops the icons and descriptions.

More Navigation blocks

View all Navigation
PRO

navbar66

Featured Mega Navbar

Mega-menu navbar whose panels lead with a featured project — a full-color image card with a parenthetical category beside a ruled link list. SSR-mounted panels and a stacked mobile menu.

PRO

navbar60

Mega Studio Navbar

Full mega-menu navbar — bold links open three-column panels with parenthetical section labels, descriptions and a footer link. SSR-mounted panels, pill CTA and a stacked mobile menu.

PRO

navbar19

Mega Menu Navbar

Full-width mega menu navbar with multi-column product dropdowns, icon-enhanced links, and promotional cards. Perfect for SaaS products and enterprise sites with extensive feature offerings.

PRO

navbar50

Floating Card Navbar

Detached floating navbar card with a square-mark wordmark, uppercase links and a compact seal CTA — the mobile menu unfolds inside the card.

PRO

navbar69

Promo Mega Navbar

Airy navbar with one mega item and two plain links — its panel pairs grouped link columns with a featured promo card. A primary pill CTA plus an expanding search field that swaps in over the actions. Closes on outside click or Escape.

PRO

navbar53

Dark Mega Menu Navbar

Dark studio navbar whose Services item opens a mega panel with three eyebrow-titled link columns and a bordered booking card with a seal CTA.