"use client"; import { useState } from "react"; import { Card, CardContent, CardFooter } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { Badge } from "@/components/ui/badge"; import { Input } from "@/components/ui/input"; import { AspectRatio } from "@/components/ui/aspect-ratio"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { ShoppingCart, Search, Star, Filter, Heart, Share2 } from "lucide-react"; const products = [ { id: "1", name: "Premium Wireless Headphones", price: 299.99, image: "/api/placeholder/400/400", rating: 4.5, reviews: 234, badge: "Best Seller", variants: ["Black", "White", "Blue"] }, { id: "2", name: "Smart Watch Pro", price: 399.99, image: "/api/placeholder/400/400", rating: 4.8, reviews: 567, badge: "New", variants: ["Silver", "Gold", "Space Gray"] }, { id: "3", name: "Portable Speaker", price: 149.99, image: "/api/placeholder/400/400", rating: 4.3, reviews: 189, badge: null, variants: ["Red", "Black", "Green"] }, { id: "4", name: "Laptop Stand", price: 79.99, image: "/api/placeholder/400/400", rating: 4.6, reviews: 432, badge: "Sale", variants: ["Aluminum", "Wood"] } ]; const categories = ["All Products", "Electronics", "Accessories", "Audio", "Computing"]; export default function EcommerceStorefront() { const [selectedCategory, setSelectedCategory] = useState("All Products"); const [cart, setCart] = useState<{ id: string; quantity: number }[]>([]); const addToCart = (productId: string) => { setCart(prev => { const existing = prev.find(item => item.id === productId); if (existing) { return prev.map(item => item.id === productId ? { ...item, quantity: item.quantity + 1 } : item ); } return [...prev, { id: productId, quantity: 1 }]; }); }; const cartItemsCount = cart.reduce((sum, item) => sum + item.quantity, 0); return (
Discover our latest products built with @hanzo/ui components
Showing {products.length} products
On orders over $100
100% authentic brands
Dedicated customer service