Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Sheet examples · Navigation

Navigation with User Profile Sheet for React

A left-side menu sheet with the signed-in user's initials, name and email above four links.

Framework
UI library

A left-side menu that starts with who's signed in: an Avatar with initials, the name and the email on a muted card, then Dashboard, Projects, Settings and Sign Out. People confirm the account before they navigate or sign out.

Preview

Preview width

Installation

Sign in to get your install command
Free with an account. It carries your token, so the CLI installs everything in one go.

FAQ

How is the profile card built?

A muted, rounded row with an Avatar showing JD in its AvatarFallback, the name John Doe and the email john@example.com. Add an AvatarImage to show a photo.

Should Sign Out be a link?

Only if your sign-out is a page. If it calls an API, make it a button so it isn't opened in a new tab or prefetched, and send people to the sign-in page afterwards.

Does the sheet close when a link is clicked?

Links in a sheet don't close it. When a link changes the page, close the sheet in its click handler, or let your router's navigation unmount it. To close it from code, control the open state: Pass open to Sheet; onOpenChange receives the next boolean.

How does the Menu button open the sheet?

The outline button labeled Menu is the trigger, and its text is the accessible name. The Button goes in the render prop of SheetTrigger, and the label stays its child.

Which edge does the menu use?

side="left" on SheetContent slides the panel in from the left, where people look for a menu. It fills the height and caps its width from the sm breakpoint.