Add skills page with category grouping (Story 2.4)

- Enhance Skill model with getCurrentLevel() and ordered scope
- Update SkillController to group by category with translated labels
- Add level and project_count to SkillResource
- Create skill.ts types (Skill, SkillCategory, SkillsResponse)
- Create useFetchSkills composable
- Create SkillCard component with animated progress bar
- Implement competences.vue with:
  - Responsive grid (2/3/4 columns)
  - Category sections with icons
  - Stagger animations (respects prefers-reduced-motion)
  - Loading/error/empty states
  - Placeholder for vis.js skill tree (Epic 3)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-06 10:37:10 +01:00
parent 2269ecdb62
commit 4db96a0ded
11 changed files with 414 additions and 65 deletions

View File

@@ -94,14 +94,25 @@
"previous": "Projet pr\u00e9c\u00e9dent",
"next": "Projet suivant"
},
"skills": {
"title": "Mes Comp\u00e9tences",
"page_title": "Comp\u00e9tences | Skycel",
"page_description": "D\u00e9couvrez les comp\u00e9tences techniques et soft skills de C\u00e9lian, d\u00e9veloppeur web full-stack.",
"load_error": "Impossible de charger les comp\u00e9tences...",
"no_skills": "Aucune comp\u00e9tence pour le moment",
"skill_tree_placeholder": "Arbre de comp\u00e9tences interactif (bient\u00f4t disponible)",
"level": "Niveau",
"project": "projet",
"projects": "projets"
},
"pages": {
"projects": {
"title": "Projets",
"description": "Découvrez mes projets et réalisations"
"description": "D\u00e9couvrez mes projets et r\u00e9alisations"
},
"skills": {
"title": "Compétences",
"description": "Mes compétences techniques et humaines"
"title": "Comp\u00e9tences",
"description": "Mes comp\u00e9tences techniques et humaines"
},
"testimonials": {
"title": "Témoignages",