Portfolio Personnel V2

web
15 janvier 2025
En cours de développement
90 vues
Portfolio Personnel V2

Portfolio Personnel V2

Portfolio développeur full-stack moderne avec SSR, API REST, dashboard admin complet et système de gestion de contenu.

Description du projet

Ce portfolio est une application web full-stack construite avec Nuxt 4 (Vue 3.5, TypeScript strict) pour le frontend SSR et Django 5 + Django REST Framework pour le backend API. Il présente mes projets, compétences techniques, expériences et articles de blog de manière interactive et professionnelle. L'architecture est rigoureusement séparée : le frontend communique exclusivement via REST API, avec TanStack Query pour le data fetching (cache automatique, invalidation, mutations), Pinia pour l'état global, et Zod + Vee-Validate pour la validation des formulaires. Le backend suit un pattern strict models → services → serializers → views avec un service layer dédié. L'infrastructure Docker Compose orchestre 6 services principaux (Nuxt, Django/Gunicorn, PostgreSQL, Redis, RabbitMQ, Celery) avec des profils optionnels pour le monitoring (Prometheus, Grafana, Loki) et le développement (Swagger, pgAdmin). Le CI/CD GitLab déploie automatiquement sur VPS via SSH.

Fonctionnalités principales

01
Interface publique responsive avec SSR Nuxt 4, animations fluides et mode sombre
02
Dashboard d'administration complet avec CRUD pour articles, projets, stacks et expériences
03
Système de blog avec catégories, tags, blocs de contenu et articles populaires
04
Data fetching via TanStack Query avec cache SWR, invalidation automatique et prefetching
05
Import/export de données multi-format (JSON, CSV, Excel) via Celery avec preview et validation
06
Authentification JWT en cookies HTTPOnly avec refresh token rotation et device fingerprinting
07
Monitoring complet avec Prometheus, Grafana et Loki pour les logs centralisés
08
CI/CD GitLab avec build Docker et déploiement automatique sur VPS

Vous avez un projet similaire en tête ?

Discutons de la façon dont je peux vous aider à concrétiser votre vision.