Innovations

Logo Left Navbar

Classic top nav: brand logo on the left, inline links, CTA group on the right.

Preview

Source

tsx
"use client";

import { Button } from "@/components/ui/button";
import { Sparkles } from "lucide-react";

const links = [
  { label: "Product", href: "#" },
  { label: "Solutions", href: "#" },
  { label: "Pricing", href: "#" },
  { label: "Docs", href: "#" },
  { label: "Company", href: "#" },
];

export default function NavbarLogoLeft() {
  return (
    <header className="w-full border-b border-border bg-background">
      <div className="container mx-auto flex items-center justify-between gap-6 px-6 py-4">
        <a href="#" className="flex items-center gap-2 text-foreground font-bold">
          <Sparkles className="w-5 h-5 text-primary" />
          <span>Beautiful Possibilities</span>
        </a>
        <nav className="hidden md:flex items-center gap-6">
          {links.map((l) => (
            <a
              key={l.label}
              href={l.href}
              className="text-sm text-muted-foreground hover:text-foreground transition-colors"
            >
              {l.label}
            </a>
          ))}
        </nav>
        <div className="flex items-center gap-2">
          <Button variant="ghost" size="sm" className="hidden sm:inline-flex">
            Sign in
          </Button>
          <Button size="sm">Free site review</Button>
        </div>
      </div>
    </header>
  );
}
Claude Code Instructions

CLI Install

npx innovations add logo-left

Where to use it

Place this component at the top of your layout as the site header. In Astro (src/layouts/Layout.astro): import NavbarLogoLeft from '../components/innovations/navbars/logo-left'; // Render before <slot /> in the layout body Customize: swap the Sparkles icon and brand name; edit the links array at the top of the file.