wuhp commited on
Commit
a8903ef
·
verified ·
1 Parent(s): e16509e

Update components/LandingPage.tsx

Browse files
Files changed (1) hide show
  1. components/LandingPage.tsx +150 -147
components/LandingPage.tsx CHANGED
@@ -17,12 +17,12 @@ const LandingPage: React.FC<LandingPageProps> = ({ onEnterApp }) => {
17
  return (
18
  <div className="fixed inset-0 w-screen h-screen bg-slate-950 text-slate-200 overflow-y-auto overflow-x-hidden selection:bg-purple-500/30 z-50">
19
  {/* Navbar */}
20
- <nav className="border-b border-slate-800/50 bg-slate-950/80 backdrop-blur-md fixed top-0 w-full z-50">
21
  <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-16 flex items-center justify-between">
22
  <div className="flex items-center gap-3">
23
  <img
24
  src="https://huggingface.co/spaces/wuhp/testarcbuilder/resolve/main/public/logo.png"
25
- alt="wuhp Architecture Builder Logo"
26
  className="w-10 h-10 object-contain"
27
  />
28
  <span className="font-bold text-lg tracking-tight text-white">wuhp</span>
@@ -41,156 +41,159 @@ const LandingPage: React.FC<LandingPageProps> = ({ onEnterApp }) => {
41
  </div>
42
  </nav>
43
 
44
- {/* Hero Section */}
45
- <section className="relative pt-32 pb-20 lg:pt-48 lg:pb-32 overflow-hidden">
46
- <div className="absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[400px] bg-blue-600/20 rounded-full blur-[120px] -z-10" />
47
- <div className="absolute bottom-0 right-0 w-[600px] h-[300px] bg-purple-600/10 rounded-full blur-[100px] -z-10" />
48
-
49
- <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
50
- <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-slate-800/50 border border-slate-700/50 text-xs font-medium text-blue-400 mb-6 animate-in fade-in slide-in-from-bottom-4 duration-700">
51
- <Sparkles size={12} />
52
- <span>Now powered by Gemini 2.5</span>
53
- </div>
54
-
55
- <h1 className="text-5xl md:text-7xl font-extrabold text-white tracking-tight mb-6 animate-in fade-in slide-in-from-bottom-8 duration-700 delay-100">
56
- Design Deep Learning <br />
57
- <span className="bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent">
58
- With AI Architect Agents
59
- </span>
60
- </h1>
61
 
62
- <p className="max-w-2xl mx-auto text-lg text-slate-400 mb-10 leading-relaxed animate-in fade-in slide-in-from-bottom-8 duration-700 delay-200">
63
- The visual interface where human creativity meets AI precision. Draft complex neural networks, validate architectures, and generate production-ready PyTorch code instantly.
64
- </p>
65
-
66
- <div className="flex flex-col sm:flex-row items-center justify-center gap-4 animate-in fade-in slide-in-from-bottom-8 duration-700 delay-300">
67
- <button
68
- onClick={onEnterApp}
69
- className="w-full sm:w-auto px-8 py-4 bg-blue-600 hover:bg-blue-500 text-white rounded-xl font-bold text-lg shadow-lg shadow-blue-500/25 transition-all flex items-center justify-center gap-2 group"
70
- >
71
- Get Started
72
- <ArrowRight className="group-hover:translate-x-1 transition-transform" size={20} />
73
- </button>
74
- <button
75
- onClick={() => handleScrollTo('features')}
76
- className="w-full sm:w-auto px-8 py-4 bg-slate-800/50 hover:bg-slate-800 text-slate-200 rounded-xl font-semibold text-lg border border-slate-700 backdrop-blur transition-all flex items-center justify-center"
77
- >
78
- Explore Features
79
- </button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
  </div>
81
- </div>
82
- </section>
83
 
84
- {/* Features Grid */}
85
- <section id="features" className="py-24 bg-slate-900/30 border-t border-slate-800/50">
86
- <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
87
- <div className="text-center mb-16">
88
- <h2 className="text-3xl font-bold text-white mb-4">Everything you need to build</h2>
89
- <p className="text-slate-400">From concept to code, powered by advanced specialized agents.</p>
90
- </div>
91
-
92
- <div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
93
- <FeatureCard
94
- icon={<Layout className="text-blue-400" />}
95
- title="Visual Node Editor"
96
- description="Drag, drop, and connect over 50+ layer types including Transformers, Convolutions, and specialized blocks for Audio and 3D."
97
- />
98
- <FeatureCard
99
- icon={<Brain className="text-purple-400" />}
100
- title="Multi-Agent System"
101
- description="Our Architect, Critic, and Refiner agents collaborate to interpret your prompts and build optimal graph structures automatically."
102
- />
103
- <FeatureCard
104
- icon={<Code2 className="text-emerald-400" />}
105
- title="PyTorch Export"
106
- description="Instantly convert your visual graph into clean, runnable PyTorch code, complete with shape handling and forward passes."
107
- />
108
- <FeatureCard
109
- icon={<ShieldCheck className="text-amber-400" />}
110
- title="Smart Validation"
111
- description="Detect shape mismatches and disconnected nodes before you run. Use the Auto-Fixer to correct errors instantly."
112
- />
113
- <FeatureCard
114
- icon={<Zap className="text-pink-400" />}
115
- title="Rapid Prototyping"
116
- description="Start from templates like YOLO, ResNet, or Transformers, or use natural language to generate entire architectures from scratch."
117
- />
118
- <FeatureCard
119
- icon={<Layers className="text-cyan-400" />}
120
- title="Advanced Modules"
121
- description="Support for cutting-edge layers: Sparse MoE, RoPE, SwiGLU, 3D Gaussian Splats, and more out of the box."
122
- />
 
123
  </div>
124
- </div>
125
- </section>
126
 
127
- {/* Agent Workflow Section */}
128
- <section id="agents" className="py-24 relative overflow-hidden">
129
- <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
130
- <div className="bg-slate-900 border border-slate-800 rounded-3xl p-8 md:p-12 relative overflow-hidden">
131
- {/* Background glow */}
132
- <div className="absolute top-0 right-0 w-96 h-96 bg-blue-500/10 rounded-full blur-[80px] -z-10" />
133
-
134
- <div className="grid lg:grid-cols-2 gap-12 items-center">
135
- <div>
136
- <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-purple-500/10 border border-purple-500/20 text-xs font-medium text-purple-400 mb-6">
137
- <Brain size={12} />
138
- <span>Intelligent Workflow</span>
139
- </div>
140
- <h2 className="text-3xl md:text-4xl font-bold text-white mb-6">
141
- Meet your new <br />
142
- <span className="text-blue-400">AI Engineering Team</span>
143
- </h2>
144
- <p className="text-slate-400 text-lg mb-8 leading-relaxed">
145
- Stop writing boilerplate. Simply describe your idea, such as "A multimodal model that combines video and audio for sentiment analysis," and let the agents handle the rest.
146
- </p>
147
-
148
- <div className="space-y-4">
149
- <AgentRow name="The Architect" role="Drafts initial graph structures based on your requirements." color="bg-blue-500" />
150
- <AgentRow name="The Critic" role="Reviews architectures for logical errors and bottlenecks." color="bg-amber-500" />
151
- <AgentRow name="The Refiner" role="Polishes the design and generates the final implementation." color="bg-emerald-500" />
152
- </div>
153
- </div>
154
-
155
- <div className="relative">
156
- {/* Abstract Representation of Graph */}
157
- <div className="bg-slate-950 border border-slate-800 rounded-xl p-6 shadow-2xl relative z-10">
158
- <div className="flex items-center justify-between mb-4 border-b border-slate-800 pb-4">
159
- <div className="flex gap-2">
160
- <div className="w-3 h-3 rounded-full bg-red-500" />
161
- <div className="w-3 h-3 rounded-full bg-yellow-500" />
162
- <div className="w-3 h-3 rounded-full bg-green-500" />
163
- </div>
164
- <div className="text-xs text-slate-500 font-mono">agent_activity.log</div>
165
- </div>
166
- <div className="space-y-3 font-mono text-sm">
167
- <div className="flex gap-2">
168
- <span className="text-blue-400">[Architect]</span>
169
- <span className="text-slate-300">Drafting ResNet backbone...</span>
170
- </div>
171
- <div className="flex gap-2">
172
- <span className="text-amber-400">[Critic]</span>
173
- <span className="text-slate-300">Detected shape mismatch at Node 4.</span>
174
- </div>
175
- <div className="flex gap-2">
176
- <span className="text-emerald-400">[Refiner]</span>
177
- <span className="text-slate-300">Adding Pooling layer to fix dims.</span>
178
- </div>
179
- <div className="flex gap-2 opacity-50">
180
- <span className="text-slate-500">...</span>
181
- </div>
182
- <div className="mt-4 p-3 bg-slate-900 rounded border border-slate-800 text-emerald-400">
183
- Build Complete. 0 Errors.
184
- </div>
185
- </div>
186
- </div>
187
- {/* Decorative Elements */}
188
- <div className="absolute -bottom-6 -right-6 w-full h-full border border-slate-800 rounded-xl -z-10 bg-slate-900/50" />
189
- </div>
190
- </div>
 
191
  </div>
192
- </div>
193
- </section>
194
 
195
  {/* Footer */}
196
  <footer className="py-12 border-t border-slate-800/50 bg-slate-950 text-slate-500 text-sm">
@@ -198,7 +201,7 @@ const LandingPage: React.FC<LandingPageProps> = ({ onEnterApp }) => {
198
  <div className="flex items-center gap-2">
199
  <img
200
  src="https://huggingface.co/spaces/wuhp/testarcbuilder/resolve/main/public/logo.png"
201
- alt="wuhp Architecture Builder Logo"
202
  className="w-6 h-6 object-contain opacity-80"
203
  />
204
  <span className="font-semibold text-slate-300">wuhp.org</span>
 
17
  return (
18
  <div className="fixed inset-0 w-screen h-screen bg-slate-950 text-slate-200 overflow-y-auto overflow-x-hidden selection:bg-purple-500/30 z-50">
19
  {/* Navbar */}
20
+ <nav aria-label="Main navigation" className="border-b border-slate-800/50 bg-slate-950/80 backdrop-blur-md fixed top-0 w-full z-50">
21
  <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-16 flex items-center justify-between">
22
  <div className="flex items-center gap-3">
23
  <img
24
  src="https://huggingface.co/spaces/wuhp/testarcbuilder/resolve/main/public/logo.png"
25
+ alt="wuhp - Visual AI Architect Logo"
26
  className="w-10 h-10 object-contain"
27
  />
28
  <span className="font-bold text-lg tracking-tight text-white">wuhp</span>
 
41
  </div>
42
  </nav>
43
 
44
+ {/* Main Content */}
45
+ <main>
46
+ {/* Hero Section */}
47
+ <section className="relative pt-32 pb-20 lg:pt-48 lg:pb-32 overflow-hidden">
48
+ <div className="absolute top-0 left-1/2 -translate-x-1/2 w-[800px] h-[400px] bg-blue-600/20 rounded-full blur-[120px] -z-10" />
49
+ <div className="absolute bottom-0 right-0 w-[600px] h-[300px] bg-purple-600/10 rounded-full blur-[100px] -z-10" />
 
 
 
 
 
 
 
 
 
 
 
50
 
51
+ <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
52
+ <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-slate-800/50 border border-slate-700/50 text-xs font-medium text-blue-400 mb-6 animate-in fade-in slide-in-from-bottom-4 duration-700">
53
+ <Sparkles size={12} />
54
+ <span>Now powered by Gemini 2.5</span>
55
+ </div>
56
+
57
+ <h1 className="text-5xl md:text-7xl font-extrabold text-white tracking-tight mb-6 animate-in fade-in slide-in-from-bottom-8 duration-700 delay-100">
58
+ Design Deep Learning <br />
59
+ <span className="bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent">
60
+ With AI Architect Agents
61
+ </span>
62
+ </h1>
63
+
64
+ <p className="max-w-2xl mx-auto text-lg text-slate-400 mb-10 leading-relaxed animate-in fade-in slide-in-from-bottom-8 duration-700 delay-200">
65
+ The visual interface where human creativity meets AI precision. Draft complex neural networks, validate architectures, and generate production-ready PyTorch code instantly.
66
+ </p>
67
+
68
+ <div className="flex flex-col sm:flex-row items-center justify-center gap-4 animate-in fade-in slide-in-from-bottom-8 duration-700 delay-300">
69
+ <button
70
+ onClick={onEnterApp}
71
+ className="w-full sm:w-auto px-8 py-4 bg-blue-600 hover:bg-blue-500 text-white rounded-xl font-bold text-lg shadow-lg shadow-blue-500/25 transition-all flex items-center justify-center gap-2 group"
72
+ >
73
+ Get Started
74
+ <ArrowRight className="group-hover:translate-x-1 transition-transform" size={20} />
75
+ </button>
76
+ <button
77
+ onClick={() => handleScrollTo('features')}
78
+ className="w-full sm:w-auto px-8 py-4 bg-slate-800/50 hover:bg-slate-800 text-slate-200 rounded-xl font-semibold text-lg border border-slate-700 backdrop-blur transition-all flex items-center justify-center"
79
+ >
80
+ Explore Features
81
+ </button>
82
+ </div>
83
  </div>
84
+ </section>
 
85
 
86
+ {/* Features Grid */}
87
+ <section id="features" className="py-24 bg-slate-900/30 border-t border-slate-800/50">
88
+ <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
89
+ <div className="text-center mb-16">
90
+ <h2 className="text-3xl font-bold text-white mb-4">Everything you need to build</h2>
91
+ <p className="text-slate-400">From concept to code, powered by advanced specialized agents.</p>
92
+ </div>
93
+
94
+ <div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
95
+ <FeatureCard
96
+ icon={<Layout className="text-blue-400" />}
97
+ title="Visual Node Editor"
98
+ description="Drag, drop, and connect over 50+ layer types including Transformers, Convolutions, and specialized blocks for Audio and 3D."
99
+ />
100
+ <FeatureCard
101
+ icon={<Brain className="text-purple-400" />}
102
+ title="Multi-Agent System"
103
+ description="Our Architect, Critic, and Refiner agents collaborate to interpret your prompts and build optimal graph structures automatically."
104
+ />
105
+ <FeatureCard
106
+ icon={<Code2 className="text-emerald-400" />}
107
+ title="PyTorch Export"
108
+ description="Instantly convert your visual graph into clean, runnable PyTorch code, complete with shape handling and forward passes."
109
+ />
110
+ <FeatureCard
111
+ icon={<ShieldCheck className="text-amber-400" />}
112
+ title="Smart Validation"
113
+ description="Detect shape mismatches and disconnected nodes before you run. Use the Auto-Fixer to correct errors instantly."
114
+ />
115
+ <FeatureCard
116
+ icon={<Zap className="text-pink-400" />}
117
+ title="Rapid Prototyping"
118
+ description="Start from templates like YOLO, ResNet, or Transformers, or use natural language to generate entire architectures from scratch."
119
+ />
120
+ <FeatureCard
121
+ icon={<Layers className="text-cyan-400" />}
122
+ title="Advanced Modules"
123
+ description="Support for cutting-edge layers: Sparse MoE, RoPE, SwiGLU, 3D Gaussian Splats, and more out of the box."
124
+ />
125
+ </div>
126
  </div>
127
+ </section>
 
128
 
129
+ {/* Agent Workflow Section */}
130
+ <section id="agents" className="py-24 relative overflow-hidden">
131
+ <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
132
+ <div className="bg-slate-900 border border-slate-800 rounded-3xl p-8 md:p-12 relative overflow-hidden">
133
+ {/* Background glow */}
134
+ <div className="absolute top-0 right-0 w-96 h-96 bg-blue-500/10 rounded-full blur-[80px] -z-10" />
135
+
136
+ <div className="grid lg:grid-cols-2 gap-12 items-center">
137
+ <div>
138
+ <div className="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-purple-500/10 border border-purple-500/20 text-xs font-medium text-purple-400 mb-6">
139
+ <Brain size={12} />
140
+ <span>Intelligent Workflow</span>
141
+ </div>
142
+ <h2 className="text-3xl md:text-4xl font-bold text-white mb-6">
143
+ Meet your new <br />
144
+ <span className="text-blue-400">AI Engineering Team</span>
145
+ </h2>
146
+ <p className="text-slate-400 text-lg mb-8 leading-relaxed">
147
+ Stop writing boilerplate. Simply describe your idea, such as "A multimodal model that combines video and audio for sentiment analysis," and let the agents handle the rest.
148
+ </p>
149
+
150
+ <div className="space-y-4">
151
+ <AgentRow name="The Architect" role="Drafts initial graph structures based on your requirements." color="bg-blue-500" />
152
+ <AgentRow name="The Critic" role="Reviews architectures for logical errors and bottlenecks." color="bg-amber-500" />
153
+ <AgentRow name="The Refiner" role="Polishes the design and generates the final implementation." color="bg-emerald-500" />
154
+ </div>
155
+ </div>
156
+
157
+ <div className="relative">
158
+ {/* Abstract Representation of Graph */}
159
+ <div className="bg-slate-950 border border-slate-800 rounded-xl p-6 shadow-2xl relative z-10">
160
+ <div className="flex items-center justify-between mb-4 border-b border-slate-800 pb-4">
161
+ <div className="flex gap-2">
162
+ <div className="w-3 h-3 rounded-full bg-red-500" />
163
+ <div className="w-3 h-3 rounded-full bg-yellow-500" />
164
+ <div className="w-3 h-3 rounded-full bg-green-500" />
165
+ </div>
166
+ <div className="text-xs text-slate-500 font-mono">agent_activity.log</div>
167
+ </div>
168
+ <div className="space-y-3 font-mono text-sm">
169
+ <div className="flex gap-2">
170
+ <span className="text-blue-400">[Architect]</span>
171
+ <span className="text-slate-300">Drafting ResNet backbone...</span>
172
+ </div>
173
+ <div className="flex gap-2">
174
+ <span className="text-amber-400">[Critic]</span>
175
+ <span className="text-slate-300">Detected shape mismatch at Node 4.</span>
176
+ </div>
177
+ <div className="flex gap-2">
178
+ <span className="text-emerald-400">[Refiner]</span>
179
+ <span className="text-slate-300">Adding Pooling layer to fix dims.</span>
180
+ </div>
181
+ <div className="flex gap-2 opacity-50">
182
+ <span className="text-slate-500">...</span>
183
+ </div>
184
+ <div className="mt-4 p-3 bg-slate-900 rounded border border-slate-800 text-emerald-400">
185
+ Build Complete. 0 Errors.
186
+ </div>
187
+ </div>
188
+ </div>
189
+ {/* Decorative Elements */}
190
+ <div className="absolute -bottom-6 -right-6 w-full h-full border border-slate-800 rounded-xl -z-10 bg-slate-900/50" />
191
+ </div>
192
+ </div>
193
+ </div>
194
  </div>
195
+ </section>
196
+ </main>
197
 
198
  {/* Footer */}
199
  <footer className="py-12 border-t border-slate-800/50 bg-slate-950 text-slate-500 text-sm">
 
201
  <div className="flex items-center gap-2">
202
  <img
203
  src="https://huggingface.co/spaces/wuhp/testarcbuilder/resolve/main/public/logo.png"
204
+ alt="wuhp Logo"
205
  className="w-6 h-6 object-contain opacity-80"
206
  />
207
  <span className="font-semibold text-slate-300">wuhp.org</span>