Johan LEROY bd569658d1
All checks were successful
Deploy production / build-deploy (push) Successful in 25s
refonte UI: navbar épurée, projets en liste unique, logo Gitea
- header: retrait du bouton GitHub (desktop + mobile), reste dans Hero/Contact
- hero: bouton « Télécharger mon CV » désactivé, « Voir mes projets » promu en CTA principal
- projets: fusion phares/autres en une seule grille (ordre récent → ancien)
- contact: retrait du lien « site » (pointait vers le site courant)
- icônes: vrai logo Gitea (tasse) à la place du git-branch générique
- nettoyage du CSS/code mort (.is-other, .m-github, icône site)
2026-06-23 11:49:23 +02:00
2026-06-22 11:17:13 +02:00

Portfolio — johanleroy.fr

Site vitrine one-page de Johan Leroy, développeur fullstack. Stack : Astro 6 (sortie 100 % statique), TypeScript, CSS (variables de thème), zéro îlot framework. Thème clair/sombre persistant, polices auto-hébergées (RGPD-friendly), icônes de technos via simple-icons (SVG inline monochromes).

Développement

npm install
npm run dev        # serveur de dev (http://localhost:4321)
npm run check      # astro check (typage)
npm run build      # build statique → dist/
npm run preview    # prévisualise le build

Modifier le contenu

Tout le contenu (profil, projets, expériences, formation, stack, centres d'intérêt) vit dans un seul fichier typé : src/data/content.ts. L'URL du bouton « café » s'y trouve aussi (coffeeUrl).

Assets

  • public/images/ — logo, photos de profil, logos d'entreprises, visuels de projets.
  • public/fonts/ — Inter + JetBrains Mono (.woff2, auto-hébergées).
  • public/cv.pdf — CV téléchargeable depuis le hero.

Déploiement

Automatique via Gitea Actions (.gitea/workflows/prod.yml) : tout push sur main lance astro check + npm run build, puis envoie dist/ en FTP vers Plesk. Secrets à définir dans Gitea (Settings → Actions → Secrets) : FTP_HOST, FTP_USER, FTP_PASSWORD, FTP_TARGET_DIR (chemin docroot, ex. /httpdocs/johanleroy/public).

Déploiement manuel possible : npm run build → uploader le contenu de dist/ sur l'hébergement statique.

Description
Languages
TypeScript 38.2%
Astro 32.6%
CSS 28.9%
JavaScript 0.3%