feat: move to next.js (!14)

Reviewed-on: https://codeberg.org/nhcarrigan/portfolio/pulls/14
Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com>
Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
This commit is contained in:
2024-08-25 02:40:46 +00:00
committed by Naomi the Technomancer
parent 6b7c8b2256
commit e22a51ba23
146 changed files with 3582 additions and 11995 deletions
+40
View File
@@ -0,0 +1,40 @@
import { Certification } from "@/components/cert";
import { Review } from "@/components/review";
import { Rule } from "@/components/rule";
import { Certifications } from "@/config/Certifications";
import { Testimonials } from "@/config/Testimonials";
import { Charm } from "next/font/google";
const Reviews = (): JSX.Element => {
return (
<>
<main className="w-[95%] text-center max-w-4xl m-auto mt-16 mb-16 rounded-lg">
<h1 className="text-5xl">Client Reviews</h1>
<section>
<p className="mb-2">
We think we&apos;re pretty great to work with, but don&apos;t take
our word for it. Here&apos;s what our clients have to say.
</p>
<Rule />
<ol className="relative border-s border-[--primary] w-4/5 m-auto">
{Testimonials.sort(
(a, b) => b.date.getTime() - a.date.getTime(),
).map((review) => (
<Review
key={review.date.toISOString()}
name={review.name}
date={review.date}
content={review.content}
sourceIcon={review.sourceIcon}
sourceUrl={review.sourceUrl}
sourceName={review.sourceName}
/>
))}
</ol>
</section>
</main>
</>
);
};
export default Reviews;