11import React from 'react' ;
22import { Search , Filter , Download , ArrowRight , ChevronRight } from 'lucide-react' ;
33import { colors } from '../theme/colors' ;
4+ import { useNavigate } from 'react-router-dom' ;
45
56const ForUsers : React . FC = ( ) => {
7+ const navigate = useNavigate ( ) ;
8+
69 const models = [
710 {
811 name : "TextGenius Pro" ,
@@ -31,17 +34,21 @@ const ForUsers: React.FC = () => {
3134 < section id = "for-users" className = "py-20 bg-[#1E2117] relative" >
3235 { /* Grid pattern overlay */ }
3336 < div className = "absolute inset-0 opacity-10" >
34- < div className = "absolute inset-0" style = { {
35- backgroundImage : 'linear-gradient(to right, #00B39F 1px, transparent 1px), linear-gradient(to bottom, #00B39F 1px, transparent 1px)' ,
36- backgroundSize : '44px 44px'
37- } } > </ div >
37+ < div
38+ className = "absolute inset-0"
39+ style = { {
40+ backgroundImage :
41+ 'linear-gradient(to right, #00B39F 1px, transparent 1px), linear-gradient(to bottom, #00B39F 1px, transparent 1px)' ,
42+ backgroundSize : '44px 44px'
43+ } }
44+ > </ div >
3845 </ div >
3946
4047 < div className = "container mx-auto px-4 md:px-6 relative z-10" >
4148 < div className = "flex flex-col lg:flex-row items-center gap-12" >
4249 < div className = "lg:w-1/2" >
4350 < div className = "lg:mr-6" >
44- < div
51+ < div
4552 className = "inline-flex items-center px-3 py-1 rounded-full text-sm font-medium mb-4"
4653 style = { { backgroundColor : `${ colors . secondary [ 500 ] } 20` , color : colors . secondary [ 500 ] } }
4754 >
@@ -54,7 +61,7 @@ const ForUsers: React.FC = () => {
5461 < p className = "text-lg text-neutral-300 mb-8" >
5562 Browse our extensive marketplace of AI solutions created by world-class developers. Find the right tools to enhance your workflow, boost productivity, and unlock new possibilities.
5663 </ p >
57-
64+
5865 < div className = "space-y-4 mb-8" >
5966 { [
6067 "Advanced search with filters for specific use cases" ,
@@ -64,80 +71,79 @@ const ForUsers: React.FC = () => {
6471 "Direct support from model creators"
6572 ] . map ( ( item , index ) => (
6673 < div key = { index } className = "flex items-start" >
67- < div
74+ < div
6875 className = "w-5 h-5 rounded-full flex items-center justify-center mt-1 mr-3 flex-shrink-0"
6976 style = { { backgroundColor : `${ colors . secondary [ 500 ] } 20` , color : colors . secondary [ 500 ] } }
7077 >
7178 < svg width = "12" height = "12" viewBox = "0 0 12 12" fill = "none" xmlns = "http://www.w3.org/2000/svg" >
72- < path d = "M10 3L4.5 8.5L2 6" stroke = "currentColor" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
79+ < path d = "M10 3L4.5 8.5L2 6" stroke = "currentColor" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
7380 </ svg >
7481 </ div >
7582 < p className = "text-neutral-300" > { item } </ p >
7683 </ div >
7784 ) ) }
7885 </ div >
79- < div className = "flex flex-col sm:flex-row gap-4" >
80- < a
81- href = "#browse-models"
82- className = "inline-flex items-center justify-center px-6 py-3 text-base font-semibold text-white bg-[#00B39F] rounded-lg hover:bg-[#00a38f] hover:scale-[1.03] transition-transform duration-300"
83- >
84- Browse AI Models
85- </ a >
86- < a
87- href = "#how-it-works"
88- className = "inline-flex items-center justify-center px-6 py-3 text-base font-semibold text-white border border-white/30 rounded-lg hover:bg-white/10 hover:scale-[1.03] transition-transform duration-300"
89- >
90- How It Works
91- < ArrowRight size = { 16 } className = "ml-2" />
92- </ a >
93- </ div >
9486
95-
87+ < div className = "flex flex-col sm:flex-row gap-4" >
88+ < button
89+ onClick = { ( ) => navigate ( '/browse-models' ) }
90+ className = "px-8 py-4 rounded-xl text-lg font-semibold text-neutral-900 dark:text-white flex items-center justify-center bg-teal-500 hover:bg-teal-600 transition-all duration-200"
91+ >
92+ Explore AI Models
93+ </ button >
94+ < a
95+ href = "#how-it-works"
96+ className = "inline-flex items-center justify-center px-6 py-3 text-base font-semibold text-white border border-white/30 rounded-lg hover:bg-white/10 hover:scale-[1.03] transition-transform duration-300"
97+ >
98+ How It Works
99+ < ArrowRight size = { 16 } className = "ml-2" />
100+ </ a >
101+ </ div >
96102 </ div >
97103 </ div >
98-
104+
105+ { /* Visual section */ }
99106 < div className = "lg:w-1/2" >
100107 < div className = "relative" >
101- { /* AI model marketplace mockup */ }
102108 < div className = "bg-neutral-900 rounded-xl p-6 shadow-lg border border-neutral-800" >
103109 { /* Search bar */ }
104110 < div className = "flex items-center mb-6" >
105111 < div className = "relative flex-grow" >
106- < input
107- type = "text"
108- placeholder = "Search for AI models..."
112+ < input
113+ type = "text"
114+ placeholder = "Search for AI models..."
109115 className = "w-full py-3 pl-10 pr-4 rounded-lg bg-neutral-800 border border-neutral-700 text-white placeholder-neutral-400 focus:outline-none focus:ring-2 focus:ring-primary-500"
110116 />
111117 < Search className = "absolute left-3 top-1/2 transform -translate-y-1/2 text-neutral-400" size = { 18 } />
112118 </ div >
113- < button
119+ < button
114120 className = "ml-3 p-3 rounded-lg border border-neutral-700 text-neutral-300 hover:bg-neutral-800"
115121 aria-label = "Filter"
116122 >
117123 < Filter size = { 18 } />
118124 </ button >
119125 </ div >
120-
126+
121127 { /* Category pills */ }
122128 < div className = "flex flex-wrap gap-2 mb-6" >
123129 { [ "All Models" , "Text Generation" , "Image Creation" , "Data Analysis" , "Voice & Audio" , "Code Assistant" ] . map ( ( category , i ) => (
124- < div
125- key = { i }
130+ < div
131+ key = { i }
126132 className = { `px-3 py-1 rounded-full text-sm font-medium ${ i === 0 ? 'text-white' : 'text-neutral-300 bg-neutral-800 hover:bg-neutral-700' } cursor-pointer transition-colors` }
127133 style = { i === 0 ? { backgroundColor : colors . primary [ 500 ] } : { } }
128134 >
129135 { category }
130136 </ div >
131137 ) ) }
132138 </ div >
133-
139+
134140 { /* Featured models */ }
135141 < h3 className = "text-sm font-medium text-neutral-400 mb-3" > TRENDING MODELS</ h3 >
136142 < div className = "space-y-3" >
137143 { models . map ( ( model , i ) => (
138144 < div key = { i } className = "p-4 rounded-lg border border-neutral-800 hover:bg-neutral-800 transition-colors" >
139145 < div className = "flex items-start" >
140- < div
146+ < div
141147 className = "w-10 h-10 rounded-lg flex items-center justify-center text-white mr-3 flex-shrink-0"
142148 style = { { backgroundColor : model . color } }
143149 >
@@ -152,21 +158,18 @@ const ForUsers: React.FC = () => {
152158 < div className = "flex items-center" >
153159 < span className = "text-sm font-medium text-white mr-1" > { model . rating } </ span >
154160 < svg width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" xmlns = "http://www.w3.org/2000/svg" >
155- < path d = "M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill = "#FFD700" stroke = "#FFD700" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
161+ < path d = "M12 2L15.09 8.26L22 9.27L17 14.14L18.18 21.02L12 17.77L5.82 21.02L7 14.14L2 9.27L8.91 8.26L12 2Z" fill = "#FFD700" stroke = "#FFD700" strokeWidth = "2" strokeLinecap = "round" strokeLinejoin = "round" />
156162 </ svg >
157163 </ div >
158164 </ div >
159165 < div className = "flex items-center justify-between mt-3" >
160- < span
166+ < span
161167 className = "px-2 py-1 rounded-md text-xs font-medium"
162168 style = { { backgroundColor : `${ model . color } 20` , color : model . color } }
163169 >
164170 { model . category }
165171 </ span >
166- < button
167- className = "p-2 rounded-full hover:bg-neutral-700 transition-colors"
168- aria-label = "Install"
169- >
172+ < button className = "p-2 rounded-full hover:bg-neutral-700 transition-colors" aria-label = "Install" >
170173 < Download size = { 18 } className = "text-neutral-300" />
171174 </ button >
172175 </ div >
@@ -175,25 +178,26 @@ const ForUsers: React.FC = () => {
175178 </ div >
176179 ) ) }
177180 </ div >
178-
181+
179182 < div className = "mt-4 text-center" >
180- < a
181- href = "#view-all"
182- className = "text-sm font-medium inline-flex items-center text-primary-400 hover:text-primary-300"
183- >
183+ < a href = "#view-all" className = "text-sm font-medium inline-flex items-center text-primary-400 hover:text-primary-300" >
184184 View All Models
185185 < ChevronRight size = { 16 } className = "ml-1" />
186186 </ a >
187187 </ div >
188188 </ div >
189-
189+
190190 { /* Decorative elements */ }
191- < div
191+ < div
192192 className = "absolute -z-10 w-full h-full bg-gradient-to-r from-primary-500 to-secondary-500 blur-2xl opacity-10 transform -translate-x-4 translate-y-4 rounded-xl"
193193 > </ div >
194- < div
194+ < div
195195 className = "absolute -bottom-4 -left-4 w-20 h-20 rounded-full"
196- style = { { background : `linear-gradient(135deg, ${ colors . secondary [ 500 ] } , ${ colors . accent [ 500 ] } )` , opacity : 0.7 , zIndex : - 1 } }
196+ style = { {
197+ background : `linear-gradient(135deg, ${ colors . secondary [ 500 ] } , ${ colors . accent [ 500 ] } )` ,
198+ opacity : 0.7 ,
199+ zIndex : - 1
200+ } }
197201 > </ div >
198202 </ div >
199203 </ div >
0 commit comments