Skip to content

Commit 08e9ad0

Browse files
authored
Merge pull request #63 from AnthonyFinney/feat/about_us
[FEAT] - Added About Us Page
2 parents 4e1ead9 + 595d25c commit 08e9ad0

File tree

3 files changed

+483
-0
lines changed

3 files changed

+483
-0
lines changed

components/Navbar.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ const Navbar: React.FC = () => {
3131
href: "https://opsimate.vercel.app/#integrations",
3232
external: true,
3333
},
34+
{ name: "About", href: "/about" },
3435
];
3536

3637
const slackLink: NavigationItem = {

components/PersonCard.tsx

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import Link from "next/link";
2+
3+
export type Contributor = {
4+
name: string;
5+
role: string;
6+
country?: string;
7+
avatarUrl?: string;
8+
github?: string;
9+
linkedin?: string;
10+
quote?: string;
11+
};
12+
13+
type PersonCardProps = {
14+
contributor: Contributor;
15+
};
16+
17+
const PersonCard: React.FC<PersonCardProps> = ({ contributor: c }) => (
18+
<div className="rounded-2xl p-6 bg-white dark:bg-surface-900 border border-surface-200 dark:border-surface-800 flex flex-col w-full max-w-[360px]">
19+
<div className="flex items-center gap-4">
20+
<div className="h-14 w-14 rounded-full overflow-hidden border border-surface-200 dark:border-surface-700 bg-surface-100 dark:bg-surface-800 flex items-center justify-center">
21+
{c.avatarUrl ? (
22+
<img src={c.avatarUrl} alt={`${c.name} avatar`} className="h-full w-full object-cover" loading="lazy" />
23+
) : (
24+
<span className="text-xl" aria-hidden="true">👤</span>
25+
)}
26+
</div>
27+
<div>
28+
<div className="flex items-center gap-2">
29+
<h3 className="font-semibold text-surface-900 dark:text-white">{c.name}</h3>
30+
{c.country && <span className="text-lg" aria-label="country">{c.country}</span>}
31+
</div>
32+
<p className="text-sm text-surface-600 dark:text-surface-400">{c.role}</p>
33+
</div>
34+
</div>
35+
36+
{c.quote && (
37+
<blockquote className="mt-4 text-surface-700 dark:text-surface-300 italic">"{c.quote}"</blockquote>
38+
)}
39+
40+
{(c.github || c.linkedin) && (
41+
<div className="mt-4 flex items-center gap-4">
42+
{c.github && (
43+
<Link href={c.github} target="_blank" rel="noopener noreferrer" className="text-primary-600 dark:text-primary-400 hover:underline">
44+
GitHub
45+
</Link>
46+
)}
47+
{c.linkedin && (
48+
<Link href={c.linkedin} target="_blank" rel="noopener noreferrer" className="text-primary-600 dark:text-primary-400 hover:underline">
49+
LinkedIn
50+
</Link>
51+
)}
52+
</div>
53+
)}
54+
</div>
55+
);
56+
57+
export default PersonCard;

0 commit comments

Comments
 (0)