11import Link from 'next/link' ;
2- import Image from 'next/image' ;
32import { Globe , Sparkles , Users , GitPullRequest , ArrowRight } from 'lucide-react' ;
43
54import BrandParticles from '@/components/BrandParticles' ;
65import { Footer } from '@/app/components/Footer' ;
6+ import ContributorsSearch from './ContributorsSearch' ;
77
88interface Contributor {
99 id : number ;
@@ -83,6 +83,12 @@ export default async function ContributorsPage() {
8383 A collective of open-source contributors shaping the future of GitHub visualization and
8484 developer storytelling through elegant engineering and collaboration.
8585 </ p >
86+ < a
87+ href = "#contributors"
88+ className = "mt-8 inline-flex items-center gap-2 rounded-full bg-black px-6 py-3 text-white font-medium hover:scale-105 transition-all duration-300"
89+ >
90+ Explore Contributors →
91+ </ a >
8692 </ section >
8793
8894 { /* STATS */ }
@@ -143,7 +149,7 @@ export default async function ContributorsPage() {
143149 </ p >
144150 </ div >
145151
146- < div className = "rounded-3xl border border-black/10 bg-white/40 dark:border-white/10 dark:bg-white/[0.04] shadow-[0_8px_30px_rgba(0,0,0,0.04)] dark:shadow-none dark:border-white/10 dark:bg-white/[0.04] p-8 backdrop-blur-xl" >
152+ < div className = "rounded-3xl border border-black/10 bg-white/40 dark:border-white/10 dark:bg-white/[0.04] shadow-[0_8px_30px_rgba(0,0,0,0.04)] dark:shadow-none p-8 backdrop-blur-xl" >
147153 < div className = "space-y-6" >
148154 { topContributors . map ( ( contributor , index ) => (
149155 < div key = { contributor . id } >
@@ -178,7 +184,7 @@ export default async function ContributorsPage() {
178184 </ section >
179185
180186 { /* CONTRIBUTORS GRID */ }
181- < section className = "mx-auto mt-32 max-w-7xl px-6" >
187+ < section className = "mx-auto mt-32 max-w-7xl px-6" id = "contributors" >
182188 < div className = "mb-16 text-center" >
183189 < h2 className = "text-4xl font-black text-black dark:text-white md:text-5xl" >
184190 Community Contributors
@@ -189,49 +195,7 @@ export default async function ContributorsPage() {
189195 </ p >
190196 </ div >
191197
192- < div className = "grid grid-cols-1 gap-8 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4" >
193- { contributors . map ( ( contributor ) => (
194- < Link
195- key = { contributor . id }
196- href = { contributor . html_url }
197- target = "_blank"
198- className = "group relative overflow-hidden rounded-3xl border border-black/10 bg-white/40 dark:border-white/10 dark:bg-white/[0.04] p-7 backdrop-blur-xl shadow-[0_8px_30px_rgba(0,0,0,0.04)] dark:shadow-none transition-all duration-500 hover:-translate-y-3 hover:border-cyan-400/30 hover:bg-white/60 dark:hover:bg-white/80 dark:hover:bg-white/[0.06]"
199- >
200- { /* GLOW */ }
201- < div className = "absolute inset-0 opacity-0 transition-opacity duration-500 group-hover:opacity-100" >
202- < div className = "absolute -top-24 right-0 h-48 w-48 rounded-full bg-cyan-500/20 blur-3xl" />
203- </ div >
204-
205- < div className = "relative z-10 flex flex-col items-center text-center" >
206- { /* AVATAR */ }
207- < div className = "relative" >
208- < div className = "absolute inset-0 rounded-full bg-cyan-400/20 blur-2xl opacity-0 transition-opacity duration-500 group-hover:opacity-100" />
209-
210- < Image
211- src = { contributor . avatar_url }
212- alt = { contributor . login }
213- width = { 110 }
214- height = { 110 }
215- className = "relative rounded-full border-4 border-white/10 transition-all duration-500 group-hover:border-cyan-400/40"
216- />
217- </ div >
218-
219- < h3 className = "mt-6 text-2xl font-bold text-black dark:text-white" >
220- { contributor . login }
221- </ h3 >
222-
223- < p className = "mt-2 text-zinc-600 dark:text-zinc-400" >
224- { contributor . contributions } contributions
225- </ p >
226-
227- < div className = "mt-6 inline-flex items-center gap-2 rounded-xl border border-black/10 bg-black/[0.03] dark:border-white/10 dark:bg-white/5 px-5 py-3 text-sm font-medium text-zinc-700 dark:text-zinc-300 transition-all duration-300 group-hover:border-cyan-400/30 group-hover:bg-cyan-400/10 group-hover:text-white" >
228- < Globe className = "h-4 w-4" />
229- View Profile
230- </ div >
231- </ div >
232- </ Link >
233- ) ) }
234- </ div >
198+ < ContributorsSearch contributors = { contributors } />
235199 </ section >
236200
237201 { /* CTA */ }
0 commit comments