Un site personnel exploité comme un petit système de production : tout se trouve dans un dépôt public, chaque changement passe par une demande de fusion (pull request), et rien n'arrive en ligne sans avoir réussi ses vérifications.

Outils

  • Jekyll 4.4 génère du HTML statique. Aucun cadriciel, aucun empaqueteur JavaScript : du CSS natif et quelques petits scripts.
  • GitHub Actions construit et déploie sur GitHub Pages, avec Cloudflare devant pour le TLS, les en-têtes de sécurité et la mise en cache.
  • Chaque demande de fusion obtient aussi son propre aperçu sur Cloudflare Pages, marqué noindex.

Automatisation

  • Cosmic Daily récupère chaque matin l'image astronomique du jour de la NASA, vérifie les droits de l'image et ouvre sa propre demande de fusion.
  • Les cartes de projets sont actualisées depuis l'API GitHub selon un horaire, puis versionnées.
  • Les nouvelles pages sont signalées aux moteurs de recherche par IndexNow ; les liens externes sont vérifiés chaque semaine.
  • Les cartes de partage pour LinkedIn sont dessinées par un petit outil Python, une par article.

Vérifications à chaque changement

  • Des tests Python et JavaScript pour les données, les gabarits et les scripts.
  • Tous les liens internes résolus ; l'accessibilité (axe, WCAG 2.2 AA) sur chaque page, en deux largeurs et dans les deux thèmes.
  • Des budgets Lighthouse pour la performance, l'accessibilité, les bonnes pratiques et le référencement.
  • Des tests de bout en bout dans un vrai navigateur pour la palette de commandes et la lecture hors ligne.
  • Une recherche de secrets dans tout l'historique git.

Confidentialité et sécurité

  • Aucun témoin (cookie) et aucun pistage. Les pages vues sont comptées par GoatCounter, qui ne conserve aucune donnée personnelle.
  • Les commentaires passent par giscus (GitHub Discussions) et ne se chargent que sur les articles.
  • Les polices et les scripts sont auto-hébergés : aucun CDN tiers. Une politique de sécurité du contenu (CSP) stricte et HSTS sont appliqués en périphérie.

Design

  • Deux thèmes, Nuit et Aube. À l'aube, les étoiles s'effacent et une seule reste.
  • Polices : Archivo Expanded pour les titres, IBM Plex Sans et IBM Plex Mono pour le texte et le code, toutes sous licence SIL Open Font.
  • L'or ne sert qu'à une chose : mon père, Vincenzo, et son étoile. Un test le garantit.
  • Le site fonctionne hors ligne pour les pages que vous avez lues, et la carte du ciel calcule les étoiles au-dessus de Montréal dans votre navigateur.

Crédits

  • Images astronomiques : APOD de la NASA et leurs auteurs crédités.
  • Catalogue d'étoiles et tracés des constellations : d3-celestial, d'Olaf Frohn (BSD-3-Clause).
  • Schémas : Mermaid, auto-hébergé.
  • Code écrit avec un assistant de programmation IA, relu et fusionné par moi, une demande de fusion à la fois.