resume/src/routes/JobCard.svelte
christian 6f8a5f7a33
All checks were successful
Build and Push Docker Image / build (push) Successful in 29s
```
Add resume components and job data for SvelteKit app

- Added `PageHeader`, `JobCard`, `Card`, and `Badge` components
- Integrated job data for Quantified Impacts and Rannes.dev
- Updated layout and page structure with new components
- Included LinkedIn profile image and social links
- Installed `@lucide/svelte` for icons
- Removed unused `$lib/index.ts`
```
2025-05-06 00:10:56 +02:00

41 lines
1.1 KiB
Svelte

<script lang="ts">
import Badge from './Badge.svelte';
import Card from './Card.svelte';
import type { Accomplishment } from './types';
type ComponentProps = {
title: string;
company: string;
start: string;
end: string;
jobDescription: string;
accomplishments: Accomplishment[];
};
let { title, company, start, end, jobDescription, accomplishments }: ComponentProps = $props();
</script>
<Card>
<div class="flex items-center gap-4">
<h2 class="mb-2 text-2xl tracking-tight">{title} @ {company}</h2>
<p class="text-sm text-slate-400">{start} - {end}</p>
</div>
<h3 class="mt-6 text-2xl">Job Description</h3>
<p class="mt-4">
{jobDescription}
</p>
<h3 class="mt-6 text-2xl">Accomplishments</h3>
<ul class="mt-4 list-inside list-disc">
{#each accomplishments as accomplishment, i (i)}
<li class="mt-4 text-xl">
<span>{accomplishment.title}</span>
<p class="ml-5 text-base">{accomplishment.description}</p>
<div class="mt-2 ml-5 flex gap-2">
{#each accomplishment.tags as tag, i (`${tag}-${i}`)}
<Badge>{tag}</Badge>
{/each}
</div>
</li>
{/each}
</ul>
</Card>