navigation-menu-demo.json — ui Source File
Architecture documentation for navigation-menu-demo.json, a json file in the ui codebase.
Entity Profile
Source Code
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "navigation-menu-demo",
"type": "registry:example",
"author": "shadcn (https://ui.shadcn.com)",
"registryDependencies": [
"navigation-menu"
],
"files": [
{
"path": "examples/navigation-menu-demo.tsx",
"content": "\"use client\"\n\nimport * as React from \"react\"\nimport Link from \"next/link\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Icons } from \"@/components/icons\"\nimport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n} from \"@/registry/default/ui/navigation-menu\"\n\nconst components: { title: string; href: string; description: string }[] = [\n {\n title: \"Alert Dialog\",\n href: \"/docs/primitives/alert-dialog\",\n description:\n \"A modal dialog that interrupts the user with important content and expects a response.\",\n },\n {\n title: \"Hover Card\",\n href: \"/docs/primitives/hover-card\",\n description:\n \"For sighted users to preview content available behind a link.\",\n },\n {\n title: \"Progress\",\n href: \"/docs/primitives/progress\",\n description:\n \"Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.\",\n },\n {\n title: \"Scroll-area\",\n href: \"/docs/primitives/scroll-area\",\n description: \"Visually or semantically separates content.\",\n },\n {\n title: \"Tabs\",\n href: \"/docs/primitives/tabs\",\n description:\n \"A set of layered sections of content—known as tab panels—that are displayed one at a time.\",\n },\n {\n title: \"Tooltip\",\n href: \"/docs/primitives/tooltip\",\n description:\n \"A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.\",\n },\n]\n\nexport default function NavigationMenuDemo() {\n return (\n <NavigationMenu>\n <NavigationMenuList>\n <NavigationMenuItem>\n <NavigationMenuTrigger>Getting started</NavigationMenuTrigger>\n <NavigationMenuContent>\n <ul className=\"grid gap-3 p-6 md:w-[400px] lg:w-[500px] lg:grid-cols-[.75fr_1fr]\">\n <li className=\"row-span-3\">\n <NavigationMenuLink asChild>\n <a\n className=\"flex h-full w-full select-none flex-col justify-end rounded-md bg-gradient-to-b from-muted/50 to-muted p-6 no-underline outline-none focus:shadow-md\"\n href=\"/\"\n >\n <Icons.logo className=\"h-6 w-6\" />\n <div className=\"mb-2 mt-4 text-lg font-medium\">\n shadcn/ui\n </div>\n <p className=\"text-sm leading-tight text-muted-foreground\">\n Beautifully designed components that you can copy and\n paste into your apps. Accessible. Customizable. Open\n Source.\n </p>\n </a>\n </NavigationMenuLink>\n </li>\n <ListItem href=\"/docs\" title=\"Introduction\">\n Re-usable components built using Radix UI and Tailwind CSS.\n </ListItem>\n <ListItem href=\"/docs/installation\" title=\"Installation\">\n How to install dependencies and structure your app.\n </ListItem>\n <ListItem href=\"/docs/primitives/typography\" title=\"Typography\">\n Styles for headings, paragraphs, lists...etc\n </ListItem>\n </ul>\n </NavigationMenuContent>\n </NavigationMenuItem>\n <NavigationMenuItem>\n <NavigationMenuTrigger>Components</NavigationMenuTrigger>\n <NavigationMenuContent>\n <ul className=\"grid w-[400px] gap-3 p-4 md:w-[500px] md:grid-cols-2 lg:w-[600px] \">\n {components.map((component) => (\n <ListItem\n key={component.title}\n title={component.title}\n href={component.href}\n >\n {component.description}\n </ListItem>\n ))}\n </ul>\n </NavigationMenuContent>\n </NavigationMenuItem>\n <NavigationMenuItem>\n <Link href=\"/docs\" legacyBehavior passHref>\n <NavigationMenuLink className={navigationMenuTriggerStyle()}>\n Documentation\n </NavigationMenuLink>\n </Link>\n </NavigationMenuItem>\n </NavigationMenuList>\n </NavigationMenu>\n )\n}\n\nconst ListItem = React.forwardRef<\n React.ElementRef<\"a\">,\n React.ComponentPropsWithoutRef<\"a\">\n>(({ className, title, children, ...props }, ref) => {\n return (\n <li>\n <NavigationMenuLink asChild>\n <a\n ref={ref}\n className={cn(\n \"block select-none space-y-1 rounded-md p-3 leading-none no-underline outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground\",\n className\n )}\n {...props}\n >\n <div className=\"text-sm font-medium leading-none\">{title}</div>\n <p className=\"line-clamp-2 text-sm leading-snug text-muted-foreground\">\n {children}\n </p>\n </a>\n </NavigationMenuLink>\n </li>\n )\n})\nListItem.displayName = \"ListItem\"\n",
"type": "registry:example",
"target": ""
}
]
}
Source
Frequently Asked Questions
What does navigation-menu-demo.json do?
navigation-menu-demo.json is a source file in the ui codebase, written in json.
Where is navigation-menu-demo.json in the architecture?
navigation-menu-demo.json is located at apps/v4/public/r/styles/default/navigation-menu-demo.json (directory: apps/v4/public/r/styles/default).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free