Skip to content

Commit 1aabb6b

Browse files
committed
testimonial card
1 parent 8162537 commit 1aabb6b

File tree

5 files changed

+79
-0
lines changed

5 files changed

+79
-0
lines changed

app/(sink)/demo/components/page.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
} from "@/packages/ui";
1616
import { Card } from "@/packages/ui/Cards/Card";
1717
import BadgeStyleVariants from "@/preview/components/badge-style-variants";
18+
import TestimonialCard from "@/preview/components/card-style-testimonial";
1819
import { CheckCircle } from "lucide-react";
1920
import React from "react";
2021

@@ -114,6 +115,8 @@ export default function page() {
114115
</Menu>
115116
</div>
116117

118+
<TestimonialCard />
119+
117120
<div className="h-36"></div>
118121
</div>
119122
);

components/Testimonial.tsx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { Text, Card, Avatar } from "@/packages/ui";
2+
3+
interface TestimonialCardProps {
4+
quote: string;
5+
avatarSrc: string;
6+
name: string;
7+
title: string;
8+
}
9+
10+
export default function TestimonialCard({
11+
quote,
12+
avatarSrc,
13+
name,
14+
title,
15+
}: TestimonialCardProps) {
16+
return (
17+
<Card className="w-full max-w-[400px] shadow-none hover:shadow-md">
18+
<Card.Content>
19+
<Text className="text-lg">" {quote} "</Text>
20+
21+
<div className="flex items-center space-x-2 mt-6">
22+
<Avatar className="h-10 w-10">
23+
<Avatar.Image alt={`${name} avatar`} src={avatarSrc} />
24+
</Avatar>
25+
<div>
26+
<div className="font-medium">{name}</div>
27+
<div className="text-sm text-gray-500 dark:text-gray-400">
28+
{title}
29+
</div>
30+
</div>
31+
</div>
32+
</Card.Content>
33+
</Card>
34+
);
35+
}

config/components.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,13 @@ export const componentConfig = {
134134
filePath: "preview/components/card-style-commerce.tsx",
135135
preview: lazy(() => import("@/preview/components/card-style-commerce")),
136136
},
137+
"card-style-testimonial": {
138+
name: "card-style-testimonial",
139+
filePath: "preview/components/card-style-testimonial.tsx",
140+
preview: lazy(
141+
() => import("@/preview/components/card-style-testimonial")
142+
),
143+
},
137144
"input-style-default": {
138145
name: "input-style-default",
139146
filePath: "preview/components/input-style-default.tsx",

content/docs/components/card.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,9 @@ lastUpdated: 20 Oct, 2024
2727
### Product card
2828

2929
<ComponentShowcase name="card-style-commerce" />
30+
<br />
31+
<br />
32+
33+
### Testimonial card
34+
35+
<ComponentShowcase name="card-style-testimonial" />
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import { Text, Card, Avatar } from "@/packages/ui";
2+
3+
export default function TestimonialCard() {
4+
return (
5+
<Card className="w-full max-w-[400px] shadow-none hover:shadow-md">
6+
<Card.Content>
7+
<Text className="text-lg">
8+
" RetroUI is the cooling looking UI library out there! "
9+
</Text>
10+
11+
<div className="flex items-center space-x-2 mt-6">
12+
<Avatar className="h-10 w-10">
13+
<Avatar.Image
14+
alt="avatar"
15+
src="https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=880&q=80"
16+
/>
17+
</Avatar>
18+
<div>
19+
<div className="font-medium">Leroy Jenkins</div>
20+
<div className="text-sm text-gray-500 dark:text-gray-400">
21+
CEO of Uber
22+
</div>
23+
</div>
24+
</div>
25+
</Card.Content>
26+
</Card>
27+
);
28+
}

0 commit comments

Comments
 (0)