Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

SaaS Marketing Navbar Block for React

A one-bar marketing navbar for a product roadmap tool: a wordmark, a Product menu of four areas with icons and one-line descriptions, plain links with the current page marked, Sign in and a Shine Button, and a sheet with the same links on phones.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

A marketing navbar for React with Base UI, the bar that opens a product's site. The wordmark leads; a Product menu opens a panel of four product areas, each with an icon on a small tile and one line on what it does; Customers, Pricing and Docs follow as plain links, the current page marked by a foreground stroke that lies on the bar's bottom edge; Sign in and a Start free Shine Button close the row. Below the md breakpoint the links fold into a menu button that opens a sheet from the top with the same links and both actions, its header lined up with the bar. The panel and the sheet open over the page, so the block stays one bar high (64 pixels, 56 on a phone). The page's rails and top rule come from the Guides spine and the bar draws no bottom border: the next block's top rule is its bottom edge. It's built from Navigation Menu, Sheet, Guides, Shine Button and Button, with your theme's tokens for every colour. For SaaS and product sites whose header needs one menu of product areas and a sign-up that's always in reach.

FAQ

How does it work with a keyboard and a screen reader?

The links sit in a nav landmark named Main, after the wordmark (a link home). Tab reaches the wordmark, Product, each link, Sign in and Start free. Enter or Space opens the Product menu, its button says whether it's expanded, and Escape closes it and puts focus back on Product. Focus stays on Product when the menu opens; Tab moves into the panel. The arrow keys move along the bar and between the panel's links. The menu also opens on hover.

How does it work on a phone?

Below the md breakpoint the wordmark, Start free and a menu button stay on the bar, and nothing wraps at 320 pixels. The menu button says whether the menu is open and which panel it controls; it opens a sheet from the top whose header lines up with the bar (the wordmark where it was, the close button where the menu button was), then the four product areas with their descriptions, the links with the current page tinted, and Sign in and Start free. Focus moves into the sheet and stays there; Escape, the close button or choosing a link closes it, and focus goes back to the menu button. A sheet taller than the screen scrolls.

Does choosing a link close the menu?

Yes, in the panel and in the sheet, so a client-side route change that keeps the navbar mounted doesn't leave a menu open over the new page. Each product link takes closeOnClick. The sheet's open state is held in the block too (sheetOpen), and each of its links closes it. Every link points at #: point them at your pages. Sign in and Start free render the link they're given with render, with nativeButton={false}.

How does it sit on the page, and can it stick to the top?

The navbar is the page's first block: its + marks and rails line up with every block under it, its top rule falls on the window's top edge (or between it and a banner above it), and it draws no bottom border, because the next block's top rule is its bottom edge. The panel opens over the page under the bar, so the page below doesn't move. To keep the bar in view while the page scrolls, add sticky top-0 z-40 bg-background/80 backdrop-blur to the header; the menu still opens under it.

What moves, and what happens with reduced motion?

Nothing moves on load: the navbar is chrome and is simply there. The panel opens with the menu's own fade, the chevron turns, the sheet slides down from the top, and a band of light sweeps across Start free once on hover and keyboard focus. With reduced motion the chevron turns at once, the sheet appears without sliding and the light fades in where it stands. The catalog's panel still fades and scales in over a third of a second.

  • Pro

    A one-bar navbar for an observability platform whose Products, Resources and Company menus each open a wide panel of three link columns closed by a footer strip, with an accordion of the same links in a sheet on phones.

  • Pro

    Landing Page Navbar

    Link highlights

    A 64 px navbar built for a landing page: a skip link that appears on keyboard focus, in-page links that jump to the page's sections, the chosen section marked by a stroke on the bar's edge, a Log in link and a Shine Button, with a sheet on phones.

  • Pro

    A one-bar navbar for a calendar assistant in beta: a Beta badge beside the wordmark, three plain links, and a Join the waitlist Shine Button that turns in place into an email field and then into a confirmation.

  • Pro

    A one-bar navbar for a workflow-automation tool whose three triggers each open a narrow flyout under themselves, a plain list, a described list with status badges and a promo card with a small chart, with a caret pointing at the open trigger and collapsible rows in a sheet on phones.

  • Pro

    A slim announcement strip for a writing app's release: one centred line with the version, the news and an underlined link, and a ghost button that folds the strip away.

  • Pro

    Reverse Split News List Hero

    Updates and timelines

    A reverse split hero on drafting lines for a team docs workspace: a greyscale product illustration beside an announcement pill, the headline, a ruled list of the latest updates as links, a Shine Button and a second action.