Files
Nemia-Website/components/Navbar.tsx

90 lines
3.6 KiB
TypeScript

"use client";
import React, { useState } from 'react';
import { Menu, X } from 'lucide-react';
import logo from '@/assets/images/icon.png';
import WaitlistModal from './WaitlistModal';
import Link from 'next/link';
import Image from 'next/image';
const Navbar: React.FC = () => {
const [isOpen, setIsOpen] = useState(false);
const [isWaitlistOpen, setIsWaitlistOpen] = useState(false);
return (
<>
<nav className="fixed w-full z-50 bg-background-dark/80 backdrop-blur-md border-b border-gray-800">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="flex justify-between h-16 items-center">
{/* Logo */}
<Link
href="/"
className="flex items-center gap-2 cursor-pointer"
>
<Image
src={logo}
alt="Nemia Logo"
width={32}
height={32}
className="rounded-lg object-contain"
/>
<span className="font-display font-bold text-xl tracking-tight text-white">
Nemia
</span>
</Link>
{/* Desktop Nav */}
<div className="hidden md:flex items-center space-x-8">
<Link href="/#features" className="text-gray-300 hover:text-primary transition-colors text-sm font-medium">Features</Link>
<Link href="/#how-it-works" className="text-gray-300 hover:text-primary transition-colors text-sm font-medium">How it Works</Link>
<Link href="/#pricing" className="text-gray-300 hover:text-primary transition-colors text-sm font-medium">Pricing</Link>
<button
onClick={() => setIsWaitlistOpen(true)}
className="bg-primary text-gray-900 px-5 py-2 rounded-full font-semibold text-sm hover:brightness-110 transition-all shadow-glow"
>
Get Started
</button>
</div>
{/* Mobile Menu Button */}
<div className="md:hidden flex items-center">
<button
onClick={() => setIsOpen(!isOpen)}
className="text-gray-300 hover:text-white transition-colors"
>
{isOpen ? <X size={24} /> : <Menu size={24} />}
</button>
</div>
</div>
</div>
{/* Mobile Menu */}
{isOpen && (
<div className="md:hidden bg-surface-dark border-b border-gray-800">
<div className="px-2 pt-2 pb-3 space-y-1 sm:px-3">
<Link href="/#features" className="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-800">Features</Link>
<Link href="/#how-it-works" className="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-800">How it Works</Link>
<Link href="/#pricing" className="block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-800">Pricing</Link>
<button
onClick={() => {
setIsOpen(false);
setIsWaitlistOpen(true);
}}
className="w-full mt-4 bg-primary text-gray-900 px-5 py-3 rounded-xl font-bold hover:brightness-110 transition-all"
>
Get Started
</button>
</div>
</div>
)}
</nav>
<WaitlistModal
isOpen={isWaitlistOpen}
onClose={() => setIsWaitlistOpen(false)}
/>
</>
);
};
export default Navbar;