feat: add projects page and rework home page

This commit is contained in:
2026-07-09 16:24:51 +02:00
parent 8aa5aca650
commit 834d7ed00f
32 changed files with 720 additions and 77 deletions
+47 -3
View File
@@ -1,14 +1,58 @@
import type { TimelineItem } from '@nuxt/ui';
import type { Tool } from './tool';
import { timeToString, type TimePeriod } from './time';
export class ResumeExperience implements TimelineItem {
tools: Tool[] = [];
export interface ResumeExperience {
dates: TimePeriod;
title: string;
company: string;
description: string;
tools: Tool[];
icon: string;
}
export class ResumeExperienceTimelineItem implements TimelineItem {
tools: Tool[];
description?: string;
date: string;
title: string;
icon: string;
constructor(from: ResumeExperience) {
this.date = timeToString(from.dates);
this.title = `${from.title}${from.company}`;
this.description = from.description;
this.icon = from.icon;
this.tools = from.tools;
}
}
export interface Education {
dates: TimePeriod;
degree: string;
institution: string;
location: string;
description?: string;
icon: string;
}
export class EducationTimelineItem implements TimelineItem {
date: string;
description?: string;
title: string;
icon: string;
constructor(from: Education) {
this.date = timeToString(from.dates);
this.description = from.description;
this.title = `${from.degree}${from.institution}, ${from.location}`;
this.icon = from.icon;
}
}
export class ResumeContent {
experience: ResumeExperience[] = [];
education: TimelineItem[] = [];
education: Education[] = [];
otherTools: Tool[] = [];
devops: Tool[] = [];
os: Tool[] = [];