Réalisé en 2025

Portfolio perso (Laravel)

Portfolio

Portfolio personnel réalisé sur Laravel.

Sections

Description

N’étant pas totalement convaincu par mon précédent site internet réalisé avec Astro, j’ai décidé d’en concevoir un nouveau, cette fois-ci avec Laravel. Contrairement à mes précédentes tentatives, j’ai pris le temps d’analyser les meilleures options qui s’offraient à moi. Je ne voulais surtout pas retomber dans un développement interminable comme lors de ma première tentative avec Laravel, à travers la Plateforme web SL-Projects.

J’ai d’abord envisagé d’utiliser Laravel Nova afin de m’épargner le développement du back office. Cependant, le prix de la licence étant relativement élevé, et n’étant pas certain que ce soit une base pérenne pour mon projet, j’ai rapidement écarté cette solution.

Grâce à un site que j’ai réalisé pour une amie, j’ai pu expérimenter Vue.js intégré à Laravel. La sortie de Laravel 12, accompagnée des nouveaux starter kits et de Inertia 2, a fini de me convaincre.

J’ai donc démarré le développement de ce nouveau site à partir du starter kit Vue.js. Le back office est conçu avec Shadcn Vue, ce qui m’a permis de bénéficier d’une UI moderne et modulaire. Ce projet concentre l’ensemble de mon savoir-faire et regroupe toutes les fonctionnalités que j’avais développées précédemment dans d’autres projets Laravel. De plus, chaque nouvelle fonctionnalité est systématiquement couverte par des tests automatisés.

À ce jour, le projet atteint une couverture de tests de 92 %. 😊

Fonctionnalités clés

Conversion des images

Les images sont systématiquement converties dans différentes résolutions et différents formats tels qu'AVIF, WEBP et JPG.

Traductions dynamiques stockées en base

Chaque contenu textuel pouvant être créé depuis le dashboard est stocké en base de données, et peut être disponible dans diverses langues.

Automatisation des traductions par IA

Les traductions dans les autres langues que le français peuvent être créées grâce à des services d'IA tels qu'OpenAI et Anthropic.

Usage de BunnyCDN et Bunny Stream

Les images sont automatiquement envoyées sur le CDN, limitant la bande passante sur le serveur. Les vidéos sont envoyées et transcodées sur Bunny Stream.

Enregistrement des visites à des fins de statistiques

À des fins statistiques, chaque visite du site est enregistrée en base de données. Les adresses IP et les user agents sont automatiquement analysés afin d’identifier s’il s’agit d’un robot ou d’un utilisateur humain.

Statistiques

Dépôt GitHub laravel-personal-website
Voir sur GitHub
Étoiles
2
Forks
0
Observateurs
2
Issues
2
Langages
  • PHP 67.8%
  • Vue 28.6%
  • TypeScript 2%
  • Shell 0.6%
  • CSS 0.5%
  • Blade 0.2%
  • JavaScript 0.2%
  • Dockerfile 0.1%
Other master Créé le 3 mars 2025 Mis à jour le 11 juin 2026

Technologies utilisées

Captures d’écran

19 captures

Typescript VueJS Sass Bootstrap Figma 2024

Site personnel

Voir le projet
Typescript Sass Bootstrap Figma Astro 2024

Portfolio perso (Astro)

Voir le projet