import React, { useState, useEffect, useRef } from 'react'; import * as THREE from 'three'; import { ShoppingCart, Menu, X, ChevronRight, Zap, Globe, ShieldCheck, Cpu, Search, Instagram, Facebook } from 'lucide-react'; // --- Escena 3D de Fondo (Abstracta y Tecnológica) --- const Hero3D = () => { const mountRef = useRef(null); useEffect(() => { let width = mountRef.current.clientWidth; let height = mountRef.current.clientHeight; const scene = new THREE.Scene(); const camera = new THREE.PerspectiveCamera(75, width / height, 0.1, 1000); const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true }); renderer.setSize(width, height); mountRef.current.appendChild(renderer.domElement); // Torus Knot para un look más complejo y moderno const geometry = new THREE.TorusKnotGeometry(1.5, 0.4, 100, 16); const material = new THREE.MeshStandardMaterial({ color: 0x00f2ff, wireframe: true, metalness: 0.9, roughness: 0.1, }); const mesh = new THREE.Mesh(geometry, material); scene.add(mesh); const light = new THREE.PointLight(0x7000ff, 2, 100); light.position.set(5, 5, 5); scene.add(light); const ambientLight = new THREE.AmbientLight(0xffffff, 0.2); scene.add(ambientLight); camera.position.z = 5; const animate = () => { requestAnimationFrame(animate); mesh.rotation.x += 0.003; mesh.rotation.y += 0.005; renderer.render(scene, camera); }; const handleResize = () => { if (!mountRef.current) return; width = mountRef.current.clientWidth; height = mountRef.current.clientHeight; renderer.setSize(width, height); camera.aspect = width / height; camera.updateProjectionMatrix(); }; window.addEventListener('resize', handleResize); animate(); return () => { window.removeEventListener('resize', handleResize); if (mountRef.current) mountRef.current.removeChild(renderer.domElement); }; }, []); return
; }; const App = () => { const [isMenuOpen, setIsMenuOpen] = useState(false); const [scrolled, setScrolled] = useState(false); useEffect(() => { const handleScroll = () => setScrolled(window.scrollY > 20); window.addEventListener('scroll', handleScroll); return () => window.removeEventListener('scroll', handleScroll); }, []); const productos = [ { id: 1, name: "Casaca 'Cyber-Pulse'", price: "349", img: "https://images.unsplash.com/photo-1591047139829-d91aecb6caea?auto=format&fit=crop&q=80&w=500", tag: "NUEVO" }, { id: 2, name: "Cargo 'Phantom' Negro", price: "199", img: "https://images.unsplash.com/photo-1620799140408-edc6dcb6d633?auto=format&fit=crop&q=80&w=500", tag: "POPULAR" }, { id: 3, name: "Hoddie 'Glitch' Oversize", price: "220", img: "https://images.unsplash.com/photo-1556821840-3a63f95609a7?auto=format&fit=crop&q=80&w=500", tag: "NUEVO" }, { id: 4, name: "Sneakers 'Vertex' V1", price: "480", img: "https://images.unsplash.com/photo-1595950653106-6c9ebd614d3a?auto=format&fit=crop&q=80&w=500", tag: "LIMITADO" }, ]; return (
{/* Barra de Anuncio */}
ENVÍOS GRATIS A TODO EL PERÚ POR LANZAMIENTO — 15% DE DESCUENTO EN TU PRIMERA COMPRA — BRUKUTU FUTUREWEAR 2024 — 
ENVÍOS GRATIS A TODO EL PERÚ POR LANZAMIENTO — 15% DE DESCUENTO EN TU PRIMERA COMPRA — BRUKUTU FUTUREWEAR 2024 — 
{/* Navegación */} {/* Hero Section */}

STREETWEAR
DISTÓPICO

{/* Decoración lateral */}

LIM-2024-BRK

{/* Categorías Rápidas */}
Hombres

Hombres

Mujeres

Mujeres

{/* Productos Destacados */}

Nuevos Ingresos

Ver todo
{productos.map((prod) => (
{prod.name} {prod.tag && ( {prod.tag} )} {/* Botón de Añadir Rápido */}

{prod.name}

S/ {prod.price}.00

))}
{/* Marquee de Marca */}
BRUKUTU FUTUREWEAR — LIMA PERÚ — DESIGNED FOR THE VOID —  BRUKUTU FUTUREWEAR — LIMA PERÚ — DESIGNED FOR THE VOID — 
{/* Footer Minimalista Moderno */}

BRUKUTU

Info
  • Nosotros
  • Sostenibilidad
  • Puntos de Venta
Ayuda
  • Envíos y Retornos
  • Cuidado de Prendas
  • Contacto
Newsletter

© 2024 BRUKUTU PERÚ. TODOS LOS DERECHOS RESERVADOS.

Términos y Condiciones Libro de Reclamaciones
{/* Menu Mobile */} {isMenuOpen && (
Menú
Instagram WhatsApp
)} {/* Estilos CSS Inline para animaciones */}