NULLSEC
- CONTEXTE
- Site personnel, conçu et développé en solo
- RÔLE
- Système de design, développement, contenu, durcissement
- LIVRABLES
- Ce site, modèle de contenu typé, pipeline de CV Typst, posture CSP/HSTS/security.txt
- RÉSULTAT
- Source unique de vérité : le site et les CV se compilent depuis les mêmes données
NULLSEC, c'est ce site. Le cahier des charges que je me suis fixé tenait de la contrainte, pas du moodboard : cinq couleurs, aucun dégradé, trois typographies et une animation qui doit justifier sa présence. La contrainte agit comme un révélateur de conception : elle écarte les décisions sans importance pour faire ressortir celles qui comptent. Le résultat est éditorial plutôt que décoratif, et c'est le bon registre pour un travail de sécurité.
L'animation repose sur GSAP et Lenis. Chaque effet est conditionné à un test « reduced-motion » et démantelé par le nettoyage de contexte de GSAP, pour que le site se dégrade en douceur au lieu de casser chez ceux qui ont désactivé le mouvement ou qui arrivent sur une machine trop juste. Un défilement fluide qui lutte contre le navigateur est pire que pas de défilement du tout : toute la rigueur se trouve dans les routines de nettoyage, pas dans les keyframes.
Le contenu n'est que de la donnée. Le profil, les projets, les certifications et les écrits résident tous dans des modules TypeScript typés, source unique de vérité d'où les pages sont générées : ajouter un projet, c'est éditer un fichier, jamais toucher à un composant. Les CV, eux, sont écrits en Typst, en mode « CV-as-code » : des PDF versionnés, suivis au diff et reproductibles, qui se reconstruisent depuis les sources au lieu d'être bricolés à la main dans un traitement de texte.