Footer
nyxui/footerFreeComponent
A simple footer component i will add some more modern components in the future.
Live preview
live · rendered by the registry
Rendered by shadcn/ui on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://nyxui.com/r/footer.jsonSource
1"use client";2import {3 Facebook,4 Twitter,5 Instagram,6 Linkedin,7 Mail,8 Phone,9 MapPin,10 ArrowRight,11 Sparkles,12 Moon,13} from "lucide-react";14import Link from "next/link";15import { useState } from "react";1617export const Footer = () => {18 const [email, setEmail] = useState("");19 const [isSubmitting, setIsSubmitting] = useState(false);20 const [submitMessage, setSubmitMessage] = useState("");2122 // Quick Links data23 const quickLinks = [24 { label: "About Us", href: "/about" },25 { label: "Services", href: "/services" },26 { label: "Portfolio", href: "/portfolio" },27 { label: "Blog", href: "/blog" },28 { label: "Contact", href: "/contact" },29 ];3031 // Support Links data32 const supportLinks = [33 { label: "Help Center", href: "/help" },34 { label: "Privacy Policy", href: "/privacy" },35 { label: "Terms of Service", href: "/terms" },36 { label: "Cookie Policy", href: "/cookies" },37 { label: "FAQ", href: "/faq" },38 ];3940 // Social Media data41 const socialLinks = [42 { icon: Facebook, href: "/", label: "Follow us on Facebook" },43 { icon: Twitter, href: "/", label: "Follow us on Twitter" },44 { icon: Instagram, href: "/", label: "Follow us on Instagram" },45 { icon: Linkedin, href: "/", label: "Connect with us on LinkedIn" },46 ];4748 const handleNewsletterSubmit = async (49 e: React.FormEvent<HTMLFormElement>,50 ) => {51 e.preventDefault();52 setIsSubmitting(true);5354 // Simulate API call55 try {56 await new Promise((resolve) => setTimeout(resolve, 1000));57 setSubmitMessage("Successfully subscribed to newsletter!");58 setEmail("");59 } catch (error) {60 setSubmitMessage("Failed to subscribe. Please try again.");61 } finally {62 setIsSubmitting(false);63 }64 };6566 return (67 <footer68 className="relative bg-gradient-to-b from-background via-muted/50 to-background text-foreground overflow-hidden border"69 role="contentinfo"70 aria-labelledby="footer-heading"71 >72 {/* Screen reader only heading */}73 <h2 id="footer-heading" className="sr-only">74 Footer75 </h2>7677 <div className="relative container mx-auto py-16">78 <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-12 px-6">79 {/* Company Info */}80 <section aria-labelledby="company-info">81 <h3 id="company-info" className="sr-only">82 Company Information83 </h3>84 <div className="space-y-6">85// … truncated
What it pulls in
npm packages
Files it writes
More from shadcn/ui
All 68 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| 3D Layered Card3d-layered-card | shadcn/ui | Components | Free | 1 dep | |
| Animated Code Blockanimated-code-block | shadcn/ui | Components | Free | 3 deps | |
| Animated Grainy Backgroundanimated-grainy-bg | shadcn/ui | Components | Free | 1 dep | |
| Animated Textanimated-text | shadcn/ui | Components | Free | 1 dep | |
| Apple Glass Effectapple-glass-effect | shadcn/ui | Components | Free | 1 dep | |
| Bubble Backgroundbubble-background | shadcn/ui | Components | Free | no deps | |
| Custom Cursorcustom-cursor | shadcn/ui | Components | Free | 1 dep | |
| Cyberpunk Cardcyberpunk-card | shadcn/ui | Components | Free | no deps |
