mirror of
https://github.com/prdlk/website.git
synced 2026-08-03 18:01:41 +00:00
feat(docs): add astro routes for experience, projects, speaking, and writing pages
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
---
|
||||
import { getAllExperience } from "@/data/experience";
|
||||
import PageLayout from "@/layouts/Base.astro";
|
||||
|
||||
const experiences = await getAllExperience();
|
||||
|
||||
const meta = {
|
||||
description: "Roles and organizations I've worked with",
|
||||
title: "Experience",
|
||||
};
|
||||
|
||||
const range = (start: Date, end?: Date) =>
|
||||
`${start.getFullYear()} – ${end ? end.getFullYear() : "Present"}`;
|
||||
---
|
||||
|
||||
<PageLayout meta={meta}>
|
||||
<h1 class="title mb-12">Experience</h1>
|
||||
<ul class="space-y-10">
|
||||
{
|
||||
experiences.map((exp) => (
|
||||
<li>
|
||||
<div class="flex flex-wrap items-baseline justify-between gap-x-4">
|
||||
<h2 class="title text-lg">
|
||||
<a class="cactus-link" href={`/experience/${exp.id}/`}>
|
||||
{exp.data.role ? `${exp.data.role}, ${exp.data.organization}` : exp.data.organization}
|
||||
</a>
|
||||
</h2>
|
||||
<span class="text-muted text-sm">{range(exp.data.startDate, exp.data.endDate)}</span>
|
||||
</div>
|
||||
{exp.data.location && <p class="text-muted text-sm">{exp.data.location}</p>}
|
||||
{exp.data.description && <p class="mt-2">{exp.data.description}</p>}
|
||||
</li>
|
||||
))
|
||||
}
|
||||
</ul>
|
||||
</PageLayout>
|
||||
Reference in New Issue
Block a user