1
- "use client"
1
+ "use client" ;
2
2
3
- import { Button } from "@/components/ui/buttonShadcn"
4
- import { Card , CardContent , CardDescription , CardHeader , CardTitle } from "@/components/ui/card"
5
- import { Badge } from "@/components/ui/badge"
6
- import { ExternalLink , Mail } from "lucide-react"
7
- import Image from "next/image"
8
- import Link from "next/link"
3
+ import { Button } from "@/components/ui/buttonShadcn" ;
4
+ import {
5
+ Card ,
6
+ CardContent ,
7
+ CardDescription ,
8
+ CardHeader ,
9
+ CardTitle ,
10
+ } from "@/components/ui/card" ;
11
+ import { Badge } from "@/components/ui/badge" ;
12
+ import { ExternalLink , Mail } from "lucide-react" ;
13
+ import Image from "next/image" ;
14
+ import Link from "next/link" ;
9
15
10
16
type Project = {
11
- id : number
12
- name : string
13
- description : string
14
- image : string
15
- url : string
16
- category : string
17
- technologies : string [ ]
18
- }
17
+ id : number ;
18
+ name : string ;
19
+ description : string ;
20
+ image : string ;
21
+ url : string ;
22
+ category : string ;
23
+ technologies : string [ ] ;
24
+ } ;
19
25
20
- const showcaseProjects : Project [ ] = [ ]
26
+ const showcaseProjects : Project [ ] = [ ] ;
21
27
22
28
const EmptyState = ( ) => (
23
29
< div className = "flex flex-col items-center justify-center py-24" >
24
- < span className = "text-6xl mb-4 animate-bounce" role = "img" aria-label = "Rocket" > 🚀</ span >
25
- < h3 className = "text-2xl font-semibold mb-2" > Cooking something delicious...</ h3 >
26
- < p className = "text-muted-foreground text-lg mb-4" > Stay tuned! We are preparing some amazing showcases for you.</ p >
27
- < Button asChild size = "lg" className = "mt-2 animate-pulse" >
28
- < a href = "mailto:[email protected] " aria-label = "Email to get featured" >
29
- < Mail className = "mr-2 h-4 w-4" />
30
- Get Featured
31
- </ a >
32
- </ Button >
30
+ < span
31
+ className = "text-6xl mb-4 animate-bounce"
32
+ role = "img"
33
+ aria-label = "Rocket"
34
+ >
35
+ 🚀
36
+ </ span >
37
+ < h3 className = "text-2xl font-semibold mb-2" >
38
+ Cooking something Beautiful...
39
+ </ h3 >
40
+ < p className = "text-muted-foreground text-lg mb-4" >
41
+ Stay tuned! We are preparing some amazing showcases for you.
42
+ </ p >
33
43
</ div >
34
- )
44
+ ) ;
35
45
36
46
export default function Showcase ( ) {
37
47
return (
@@ -42,8 +52,9 @@ export default function Showcase() {
42
52
Projects in Production
43
53
</ h2 >
44
54
< p className = "text-lg text-muted-foreground max-w-2xl mx-auto" >
45
- Discover how businesses are leveraging our solutions to drive growth and innovation. See real implementations
46
- making a difference across various industries.
55
+ Discover how businesses are leveraging our solutions to drive growth
56
+ and innovation. See real implementations making a difference across
57
+ various industries.
47
58
</ p >
48
59
</ div >
49
60
@@ -69,7 +80,10 @@ export default function Showcase() {
69
80
className = "w-full h-48 object-cover group-hover:scale-105 transition-transform duration-300"
70
81
/>
71
82
< div className = "absolute top-3 right-3" >
72
- < Badge variant = "secondary" className = "bg-white/90 text-black shadow" >
83
+ < Badge
84
+ variant = "secondary"
85
+ className = "bg-white/90 text-black shadow"
86
+ >
73
87
{ project . category }
74
88
</ Badge >
75
89
</ div >
@@ -86,7 +100,11 @@ export default function Showcase() {
86
100
{ /* Technologies */ }
87
101
< div className = "flex flex-wrap gap-1 mb-4" >
88
102
{ project . technologies . map ( ( tech : string ) => (
89
- < Badge key = { tech } variant = "outline" className = "text-xs border-primary/30" >
103
+ < Badge
104
+ key = { tech }
105
+ variant = "outline"
106
+ className = "text-xs border-primary/30"
107
+ >
90
108
{ tech }
91
109
</ Badge >
92
110
) ) }
@@ -116,12 +134,20 @@ export default function Showcase() {
116
134
Want Your Project Featured Here?
117
135
</ h3 >
118
136
< p className = "text-lg text-muted-foreground mb-8" >
119
- Join our showcase and let the world see how you're using our solutions to transform your business. Get in
120
- touch to discuss featuring your implementation.
137
+ Join our showcase and let the world see how you're using our
138
+ solutions to transform your business. Get in touch to discuss
139
+ featuring your implementation.
121
140
</ p >
122
141
< div className = "flex flex-col sm:flex-row gap-4 justify-center" >
123
- < Button asChild size = "lg" className = "inline-flex items-center animate-glow" >
124
- < a href = "mailto:[email protected] " aria-label = "Email to get featured" >
142
+ < Button
143
+ asChild
144
+ size = "lg"
145
+ className = "inline-flex items-center animate-glow"
146
+ >
147
+ < a
148
+
149
+ aria-label = "Email to get featured"
150
+ >
125
151
< Mail className = "mr-2 h-4 w-4" />
126
152
Email Me
127
153
</ a >
@@ -130,5 +156,5 @@ export default function Showcase() {
130
156
</ div >
131
157
</ div >
132
158
</ div >
133
- )
159
+ ) ;
134
160
}
0 commit comments