Skip to content

Commit 8cf6b58

Browse files
authored
Update native Vitality app project status (#6)
1 parent 973472d commit 8cf6b58

1 file changed

Lines changed: 57 additions & 18 deletions

File tree

src/pages/Projects.tsx

Lines changed: 57 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,17 @@ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/com
33
import { Badge } from "@/components/ui/badge";
44
import { Button } from "@/components/ui/button";
55

6+
interface ProjectLink {
7+
label: string;
8+
url: string;
9+
}
10+
611
interface Project {
712
id: string;
813
title: string;
914
description: string;
10-
url: string;
15+
url?: string;
16+
links?: ProjectLink[];
1117
category: string;
1218
tags: string[];
1319
year: string;
@@ -30,12 +36,22 @@ const Projects = () => {
3036
{
3137
id: "vitality-app-native",
3238
title: "Vitality App - Native",
33-
description: "iOS and Android mobile applications for the Vitality wellness platform. Bringing comprehensive health tracking and mindfulness exercises to your pocket.",
34-
url: "https://vitalityapp.fit/",
39+
description:
40+
"iOS and Android mobile applications for the Vitality wellness platform. Now live on the App Store and Google Play, bringing comprehensive health tracking and mindfulness exercises to your pocket.",
41+
links: [
42+
{
43+
label: "Download on the App Store",
44+
url: "https://apps.apple.com/us/app/vitality-body-mind/id6749547421"
45+
},
46+
{
47+
label: "Get it on Google Play",
48+
url: "https://play.google.com/store/apps/details?id=com.vitality.app"
49+
}
50+
],
3551
category: "Health & Wellness",
3652
tags: ["Vite", "React", "Supabase", "PostgreSQL", "Node.js", "OpenAI"],
3753
year: "2025",
38-
status: "Beta Testing"
54+
status: "Live"
3955
}
4056
];
4157

@@ -104,21 +120,44 @@ const Projects = () => {
104120
</div>
105121
</div>
106122

107-
<Button
108-
asChild
109-
className="w-full group-hover:bg-primary group-hover:text-primary-foreground transition-colors"
110-
variant="outline"
111-
>
112-
<a
113-
href={project.url}
114-
target="_blank"
115-
rel="noopener noreferrer"
116-
className="flex items-center justify-center gap-2"
123+
{project.links ? (
124+
<div className="grid gap-2">
125+
{project.links.map((link) => (
126+
<Button
127+
key={link.url}
128+
asChild
129+
className="w-full group-hover:bg-primary group-hover:text-primary-foreground transition-colors"
130+
variant="outline"
131+
>
132+
<a
133+
href={link.url}
134+
target="_blank"
135+
rel="noopener noreferrer"
136+
className="flex items-center justify-center gap-2"
137+
>
138+
{link.label}
139+
<ExternalLink className="h-4 w-4" />
140+
</a>
141+
</Button>
142+
))}
143+
</div>
144+
) : project.url ? (
145+
<Button
146+
asChild
147+
className="w-full group-hover:bg-primary group-hover:text-primary-foreground transition-colors"
148+
variant="outline"
117149
>
118-
View Project
119-
<ExternalLink className="h-4 w-4" />
120-
</a>
121-
</Button>
150+
<a
151+
href={project.url}
152+
target="_blank"
153+
rel="noopener noreferrer"
154+
className="flex items-center justify-center gap-2"
155+
>
156+
View Project
157+
<ExternalLink className="h-4 w-4" />
158+
</a>
159+
</Button>
160+
) : null}
122161
</CardContent>
123162
</Card>
124163
))}

0 commit comments

Comments
 (0)