ColdSlim commited on
Commit
4aedb5d
·
verified ·
1 Parent(s): ae3922f

Upload components/RobotShowcase.js with huggingface_hub

Browse files
Files changed (1) hide show
  1. components/RobotShowcase.js +143 -0
components/RobotShowcase.js ADDED
@@ -0,0 +1,143 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { useState } from 'react';
2
+ import { Battery, Wifi, Cpu as CpuIcon, Activity } from 'lucide-react';
3
+
4
+ const robots = [
5
+ {
6
+ id: 1,
7
+ name: "Nexus One",
8
+ role: "Home Assistant",
9
+ description: "Perfect for daily chores, elderly care, and home security. Equipped with gentle touch sensors and emotional AI.",
10
+ stats: { battery: "48h", wifi: "6E", cpu: "Q1", activity: "Low" },
11
+ color: "from-blue-500 to-cyan-400"
12
+ },
13
+ {
14
+ id: 2,
15
+ name: "Nexus Pro",
16
+ role: "Industrial Worker",
17
+ description: "Heavy lifting, precision assembly, and hazardous environment exploration. Built with titanium alloy chassis.",
18
+ stats: { battery: "72h", wifi: "Mesh", cpu: "Q2", activity: "High" },
19
+ color: "from-orange-500 to-red-500"
20
+ },
21
+ {
22
+ id: 3,
23
+ name: "Nexus Medical",
24
+ role: "Surgical Assistant",
25
+ description: "Sub-millimeter precision for surgical procedures. Sterilizable exterior and advanced biometric scanning.",
26
+ stats: { battery: "24h", wifi: "Secure", cpu: "Q3", activity: "Med" },
27
+ color: "from-emerald-500 to-green-400"
28
+ }
29
+ ];
30
+
31
+ export default function RobotShowcase() {
32
+ const [activeRobot, setActiveRobot] = useState(robots[0]);
33
+
34
+ return (
35
+ <section id="models" className="py-24 bg-surface relative">
36
+ <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
37
+ <div className="text-center mb-16">
38
+ <h2 className="text-3xl md:text-5xl font-bold mb-4">Choose Your <span className="text-gradient">Companion</span></h2>
39
+ <p className="text-gray-400 max-w-2xl mx-auto">Select the model that fits your needs. From home assistance to industrial applications.</p>
40
+ </div>
41
+
42
+ <div className="grid grid-cols-1 lg:grid-cols-2 gap-12 items-center">
43
+ {/* Robot Visualizer */}
44
+ <div className="relative h-[500px] w-full glass-panel flex items-center justify-center overflow-hidden group">
45
+ <div className={`absolute inset-0 bg-gradient-to-br ${activeRobot.color} opacity-10 group-hover:opacity-20 transition-opacity duration-500`}></div>
46
+
47
+ {/* Abstract Robot Representation */}
48
+ <div className="relative z-10 animate-float">
49
+ <div className="w-64 h-96 bg-gradient-to-b from-gray-800 to-black rounded-[3rem] border border-white/20 shadow-2xl relative overflow-hidden flex flex-col items-center pt-12">
50
+ {/* Head */}
51
+ <div className="w-32 h-32 rounded-full bg-gray-900 border-2 border-primary/50 shadow-[0_0_30px_rgba(0,240,255,0.3)] mb-8 flex items-center justify-center">
52
+ <div className="w-24 h-8 bg-primary/20 rounded-full flex items-center justify-center space-x-2">
53
+ <div className="w-2 h-2 bg-primary rounded-full animate-pulse"></div>
54
+ <div className="w-2 h-2 bg-primary rounded-full animate-pulse" style={{ animationDelay: '0.2s'}}></div>
55
+ </div>
56
+ </div>
57
+
58
+ {/* Body Details */}
59
+ <div className="w-full px-8 space-y-4">
60
+ <div className="h-2 w-full bg-gray-800 rounded-full overflow-hidden">
61
+ <div className={`h-full bg-gradient-to-r ${activeRobot.color} w-3/4`}></div>
62
+ </div>
63
+ <div className="h-2 w-2/3 mx-auto bg-gray-800 rounded-full"></div>
64
+ <div className="h-2 w-1/2 mx-auto bg-gray-800 rounded-full"></div>
65
+ </div>
66
+
67
+ {/* Chest Display */}
68
+ <div className="mt-12 w-40 h-24 bg-black/50 rounded-xl border border-white/10 flex items-center justify-center">
69
+ <Activity className="text-primary h-8 w-8 animate-pulse" />
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </div>
74
+
75
+ {/* Controls & Info */}
76
+ <div className="space-y-8">
77
+ <div className="flex space-x-4 overflow-x-auto pb-4">
78
+ {robots.map((robot) => (
79
+ <button
80
+ key={robot.id}
81
+ onClick={() => setActiveRobot(robot)}
82
+ className={`flex-shrink-0 px-6 py-4 rounded-xl border transition-all duration-300 text-left min-w-[160px] ${
83
+ activeRobot.id === robot.id
84
+ ? `bg-white/10 border-primary text-white`
85
+ : 'bg-transparent border-white/10 text-gray-400 hover:border-white/30'
86
+ }`}
87
+ >
88
+ <div className="font-bold text-lg">{robot.name}</div>
89
+ <div className="text-xs opacity-70">{robot.role}</div>
90
+ </button>
91
+ ))}
92
+ </div>
93
+
94
+ <div className="glass-panel p-8">
95
+ <h3 className="text-2xl font-bold mb-2">{activeRobot.name}</h3>
96
+ <div className="inline-block px-3 py-1 bg-primary/10 text-primary text-xs font-mono rounded mb-4">
97
+ {activeRobot.role.toUpperCase()}
98
+ </div>
99
+ <p className="text-gray-300 mb-8 leading-relaxed">
100
+ {activeRobot.description}
101
+ </p>
102
+
103
+ <div className="grid grid-cols-2 gap-4 mb-8">
104
+ <div className="bg-black/20 p-4 rounded-lg flex items-center space-x-3">
105
+ <Battery className="text-primary h-5 w-5" />
106
+ <div>
107
+ <div className="text-xs text-gray-500">Battery Life</div>
108
+ <div className="font-mono font-bold">{activeRobot.stats.battery}</div>
109
+ </div>
110
+ </div>
111
+ <div className="bg-black/20 p-4 rounded-lg flex items-center space-x-3">
112
+ <Wifi className="text-primary h-5 w-5" />
113
+ <div>
114
+ <div className="text-xs text-gray-500">Connectivity</div>
115
+ <div className="font-mono font-bold">{activeRobot.stats.wifi}</div>
116
+ </div>
117
+ </div>
118
+ <div className="bg-black/20 p-4 rounded-lg flex items-center space-x-3">
119
+ <CpuIcon className="text-primary h-5 w-5" />
120
+ <div>
121
+ <div className="text-xs text-gray-500">Processor</div>
122
+ <div className="font-mono font-bold">{activeRobot.stats.cpu}</div>
123
+ </div>
124
+ </div>
125
+ <div className="bg-black/20 p-4 rounded-lg flex items-center space-x-3">
126
+ <Activity className="text-primary h-5 w-5" />
127
+ <div>
128
+ <div className="text-xs text-gray-500">Activity Level</div>
129
+ <div className="font-mono font-bold">{activeRobot.stats.activity}</div>
130
+ </div>
131
+ </div>
132
+ </div>
133
+
134
+ <button className="w-full py-4 bg-white text-dark font-bold rounded-lg hover:bg-gray-200 transition-colors">
135
+ Configure {activeRobot.name}
136
+ </button>
137
+ </div>
138
+ </div>
139
+ </div>
140
+ </div>
141
+ </section>
142
+ );
143
+ }