Introduction
Ce dépôt héberge mon site web portfolio, une carte d’identité professionnelle à destination des organisations qui souhaitent en savoir plus sur mon parcours. Sur ce site web je partage mes expériences, mes projets et mon apprentissage autour de l’ingénierie des données, des pipelines et du cloud.
Le site regroupe une page d’accueil, un profil détaillé, des fiches projets, des notes de méthode, des articles courts et des travaux d’étude, avec un formulaire de contact et des liens vers mes profils professionnels.
L’objectif
Un CV ou un profil LinkedIn ne suffisant pas toujours pour montrer comment je conçois un pipeline, documente une analyse ou structure un livrable technique. Il me fallait un espace dédié, lisible et à jour, où recruteurs et collaborateurs peuvent parcourir mes réalisations.
Le fonctionnement du site
Le site est construit comme un site statique versionné dans Git, compilé avec Quarto et publié automatiquement sur Netlify. Le contenu est rédigé en fichiers .qmd, organisé par sections, et le rendu HTML est généré à chaque mise à jour du dépôt.
Motivations des choix techniques
Chaque outil utilisé pour la réalisation du site a été choisie après comparaison avec d’autres options. J’ai retenu Quarto plutôt que Next.js ou Hugo car je suis plus familier avec le language Quarto et il s’intègre naturellement à l’écosystème data (R, Python, notebooks) et permet de mêler code et figures dans un même flux de publication. Je n’ai pas opté pour WordPress ou Webflow afin de garder la maîtrise de la structure, du thème et du déploiement, sans interface propriétaire entre le contenu et la mise en ligne.
Architecture Decision Record
| Décision | Alternative considérée | Raison du choix |
|---|---|---|
| Quarto | Hugo, Jekyll, Next.js | Écosystème natif data et Python, rendu natif des notebooks |
| Netlify | GitHub Pages, Vercel | Plugin Quarto natif, déploiement zero-config |
| SCSS custom | Thème Quarto par défaut | Contrôle total sur l’identité visuelle |
Git + _metadata.yml |
CMS headless | Pas de dépendance externe, tout est versionné |
Netlify complète cette approche avec un build automatisé à chaque push sur la branche principale, ce qui évite les déploiements manuels et aligne le site sur une pratique proche de ce qu’on attend en ingénierie logicielle (développement et intégration continue).
Le pipeline
Modification du code (commit Git)
│
▼
Envoi vers le dépôt GitHub (Push)
│
▼
Déclenchement du build Netlify
│
▼
Génération du site avec Quarto (quarto render)
│
▼
Production des fichiers HTML (dossier _site)
│
▼
Publication du site web (déploiement en production)
Réalisations techniques
- Site Quarto de type
websiteavec navigation, listings automatiques par section et métadonnées Open Graph - Structure modulaire :
project/,methods/,news/,study/, chacune pilotée par un_metadata.ymldédié - Thème personnalisé en SCSS, partials HTML pour le bandeau de page et styles spécifiques à l’accueil
- Commentaires via Utterances, flux RSS sur la section News, redirections pour les anciennes URLs
- Chaîne CI/CD : toute modification de contenu ou de configuration déclenche un nouveau build et une actualisation du site sans intervention manuelle
Le rendu final
Le portfolio est accessible en production, maintenable par simple édition de fichiers Markdown, et chaque publication de contenu déclenche un nouveau déploiement sans étape manuelle. Les sections permettent de séparer projets data, retours d’expérience, veille et travaux académiques, ce qui clarifie la lecture pour un visiteur non technique comme pour un profil data.
Ce que contient le site
- Accueil : présentation et liens vers les sections clés
- Projets : pipelines, analyses et réalisations data
- Méthodes : notes techniques et retours d’expérience approfondis
- News : articles plus courts, veille et apprentissages
- Études : travaux académiques ou formalisés
Installation et lancement en local
Prérequis : Quarto installé sur la machine, Git pour cloner le dépôt.
git clone https://github.com/ksondeji/karl.git
cd karl
quarto previewPour générer le site complet sans serveur de prévisualisation :
quarto renderLe HTML est produit dans _site/. La configuration globale se trouve dans _quarto.yml, le déploiement Netlify dans netlify.toml.
Réalisé
Pistes d’amélioration
En cours
Prévu
Licence et contact
Le code et la structure du site sont publiés sur ce dépôt. Les conditions de réutilisation du contenu sont précisées sur la page Licence du site. Pour me contacter, utilisez le formulaire disponible sur karlsondeji.com ou les liens GitHub et LinkedIn indiqués sur le site.
Le dépôt GitHub contient l’intégralité des sources, la configuration Quarto (_quarto.yml) et les instructions pour prévisualiser le site en local. Pour le moment ce dépôt est en privé.