Add projects gallery page with responsive grid (Story 2.2)

- Create useFetchProjects composable for API integration
- Implement responsive grid layout (1/2/3/4 columns)
- Add stagger fadeInUp animation with prefers-reduced-motion support
- Include loading skeleton, error state with retry, and empty state
- Configure SEO meta tags via useSeo composable
- Update Project model ordered scope for proper sorting

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-06 02:12:32 +01:00
parent 4117a84809
commit 0399f0dc1c
6 changed files with 188 additions and 55 deletions

View File

@@ -11,12 +11,13 @@
"common": {
"continue": "Continuer",
"back": "Retour",
"discover": "Découvrir",
"discover": "D\u00e9couvrir",
"close": "Fermer",
"loading": "Chargement...",
"language": "Langue",
"back_home": "Retour à l'accueil",
"back_to_adventure": "Retour à l'aventure"
"back_home": "Retour \u00e0 l'accueil",
"back_to_adventure": "Retour \u00e0 l'aventure",
"retry": "R\u00e9essayer"
},
"landing": {
"title": "Bienvenue dans mon univers",
@@ -75,8 +76,12 @@
"meta_description": "D\u00e9veloppeur Full-Stack sp\u00e9cialis\u00e9 en Vue.js, Nuxt, Laravel. D\u00e9couvrez mon profil et mes projets en 30 secondes."
},
"projects": {
"title": "Mes Projets",
"page_title": "Projets | Skycel",
"page_description": "D\u00e9couvrez les projets r\u00e9alis\u00e9s par C\u00e9lian, d\u00e9veloppeur web full-stack.",
"discover": "D\u00e9couvrir",
"no_projects": "Aucun projet pour le moment",
"load_error": "Impossible de charger les projets...",
"view_all": "Voir tous les projets"
},
"pages": {