From 58594c37bc3575d4adabafc599c35703eab79697 Mon Sep 17 00:00:00 2001 From: Jalil Arfaoui Date: Tue, 10 Mar 2026 23:40:44 +0100 Subject: [PATCH] =?UTF-8?q?Section=20Parcours=20:=20mini-timeline=20visuel?= =?UTF-8?q?le,=20exp=C3=A9riences=20featured,=20lien=20vers=20parcours=20c?= =?UTF-8?q?omplet?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/content/experiences/araymond.ar.md | 1 + src/content/experiences/araymond.en.md | 1 + src/content/experiences/araymond.md | 1 + src/content/experiences/champollion.ar.md | 1 + src/content/experiences/champollion.en.md | 1 + src/content/experiences/champollion.md | 1 + src/pages/code/index.astro | 46 ++++++++++++++--------- 7 files changed, 35 insertions(+), 17 deletions(-) diff --git a/src/content/experiences/araymond.ar.md b/src/content/experiences/araymond.ar.md index 13c8d53..c6c490e 100644 --- a/src/content/experiences/araymond.ar.md +++ b/src/content/experiences/araymond.ar.md @@ -7,6 +7,7 @@ startDate: "2022-01" endDate: "2023-01" technologies: ["TypeScript", "React.js", "Redux", "Nx", "Vite"] type: "freelance" +featured: true lang: "ar" --- diff --git a/src/content/experiences/araymond.en.md b/src/content/experiences/araymond.en.md index 171092d..a306194 100644 --- a/src/content/experiences/araymond.en.md +++ b/src/content/experiences/araymond.en.md @@ -7,6 +7,7 @@ startDate: "2022-01" endDate: "2023-01" technologies: ["TypeScript", "React.js", "Redux", "Nx", "Vite"] type: "freelance" +featured: true lang: "en" --- diff --git a/src/content/experiences/araymond.md b/src/content/experiences/araymond.md index 1548ee5..57c2457 100644 --- a/src/content/experiences/araymond.md +++ b/src/content/experiences/araymond.md @@ -7,6 +7,7 @@ startDate: "2022-01" endDate: "2023-01" technologies: ["TypeScript", "React.js", "Redux", "Nx", "Vite"] type: "freelance" +featured: true lang: "fr" --- diff --git a/src/content/experiences/champollion.ar.md b/src/content/experiences/champollion.ar.md index e7c1a86..08ee3cd 100644 --- a/src/content/experiences/champollion.ar.md +++ b/src/content/experiences/champollion.ar.md @@ -6,6 +6,7 @@ location: "ألبي" startDate: "2019-09" technologies: ["TypeScript", "JavaScript", "Node.js", "TDD", "Clean Code"] type: "teaching" +featured: true lang: "ar" --- diff --git a/src/content/experiences/champollion.en.md b/src/content/experiences/champollion.en.md index cfac11c..7c17341 100644 --- a/src/content/experiences/champollion.en.md +++ b/src/content/experiences/champollion.en.md @@ -6,6 +6,7 @@ location: "Albi" startDate: "2019-09" technologies: ["TypeScript", "JavaScript", "Node.js", "TDD", "Clean Code"] type: "teaching" +featured: true lang: "en" --- diff --git a/src/content/experiences/champollion.md b/src/content/experiences/champollion.md index 24dd01b..9a66823 100644 --- a/src/content/experiences/champollion.md +++ b/src/content/experiences/champollion.md @@ -6,6 +6,7 @@ location: "Albi" startDate: "2019-09" technologies: ["TypeScript", "JavaScript", "Node.js", "TDD", "Clean Code"] type: "teaching" +featured: true lang: "fr" --- diff --git a/src/pages/code/index.astro b/src/pages/code/index.astro index 9b9adef..403e22a 100644 --- a/src/pages/code/index.astro +++ b/src/pages/code/index.astro @@ -15,7 +15,7 @@ const experiences = (await getCollection("experiences")) .filter((e) => e.data.lang === locale && !e.data.draft) .sort((a, b) => (b.data.startDate > a.data.startDate ? 1 : -1)); -const recentExperiences = experiences.slice(0, 4); +const recentExperiences = experiences.filter((e) => e.data.featured).slice(0, 4); const projects = (await getCollection("projects")) .filter((p) => p.data.lang === locale && !p.data.draft && p.data.category === "dev" && p.data.featured) @@ -65,30 +65,42 @@ function formatMonth(dateStr: string) {

Parcours

Voir tout → -
+
+
{recentExperiences.map((exp) => { const isOngoing = !exp.data.endDate; const start = formatMonth(exp.data.startDate); const end = exp.data.endDate ? formatMonth(exp.data.endDate) : 'Présent'; return ( -
-
-
-

{exp.data.role}

-

- {exp.data.companyUrl ? ( - {exp.data.company} - ) : exp.data.company} - {exp.data.location && ` · ${exp.data.location}`} -

-
- - {start} — {end} - -
+
+
+ {isOngoing && ( +
+ )} + + {start} — {end} + +

{exp.data.role}

+

+ {exp.data.companyUrl ? ( + {exp.data.company} + ) : exp.data.company} + {exp.data.location && ` · ${exp.data.location}`} +

); })} +