"use client"; import React from "react"; import { Hexagon, Code2, Wind, Database, Lock, Globe, Activity, Aperture, } from "lucide-react"; import { ScrollReveal } from "@/components/animation/ScrollReveal"; import { SpotlightCard } from "@/components/animation/SpotlightCard"; import { TiltCard } from "@/components/animation/TiltCard"; const iconMap: Record> = { Hexagon, Code2, Wind, Database, Lock, Globe, Activity, Aperture, }; const categories = [ { title: "Frontend", items: [ { name: "NextJS", icon: "Hexagon", description: "React framework for production-grade web apps." }, { name: "Typescript", icon: "Code2", description: "Type-safe development across the entire codebase." }, { name: "TailwindCSS", icon: "Wind", description: "Utility-first styling for rapid, consistent design." }, ], }, { title: "Backend", items: [ { name: "Supabase", icon: "Database", description: "PostgreSQL database, real-time subscriptions, and edge functions." }, ], }, { title: "Authentication", items: [ { name: "Supabase Auth", icon: "Lock", description: "Secure authentication and session management." }, ], }, { title: "Deployment", items: [ { name: "Vercel", icon: "Globe", description: "Global edge deployment with optimized performance." }, ], }, { title: "UI & Motion", items: [ { name: "Framer Motion", icon: "Activity", description: "Smooth animations and interactive transitions." }, { name: "Lucide Icons", icon: "Aperture", description: "Crisp, consistent iconography throughout the app." }, ], }, ]; export function TechStack() { return (

Technologies

Modern stack, modern results

Every technology was chosen for performance, reliability, and developer experience.

{categories.map((category, categoryIndex) => (

{category.title}

{category.items.map((item) => { const Icon = iconMap[item.icon]; return (

{item.name}

{item.description}

); })}
))}
); }