Aller au contenu
Projet React & DevOps

Mon Portfolio - Site Web Professionnel

Migration et reconstruction de mon portfolio vers Next.js, avec rendu serveur, architecture de composants, données centralisées et design fidèle à l'ancienne version. Le projet conserve aussi toute la partie DevOps : Docker, VPS, Nginx, Cloudflare et pipeline CI/CD GitHub Actions.

  • Next.js
  • React
  • DevOps
  • Nginx
Aperçu du portfolio byMehd

Création de la Maquette Figma

Design et prototypage de l'interface avant le développement.

Maquette Figma du portfolio - wireframes et design system
Maquette Figma

Design System & Prototypage

Avant le développement, j'ai conçu une maquette complète sur Figma pour définir l'identité visuelle, la charte graphique et l'architecture de l'information.

La maquette pose la palette beige, orange brûlé et vert profond, la typographie Poppins, les composants réutilisables et les grandes intentions d’animation.

Cette étape m'a permis de valider le responsive et l'expérience utilisateur avant de reconstruire le site dans une base Next.js plus maintenable.

Développement Local avec Docker

Environnement de développement conteneurisé pour travailler proprement sur la version Next.js.

Docker

Conteneurisation avec Docker Compose

Le nouveau portfolio Next.js tourne dans un service Docker dédié, isolé de l'ancien site PHP. En production, le conteneur écoute uniquement en local derrière Nginx, ce qui limite les ports exposés et garde le déploiement maîtrisé.

Docker
Docker Compose

Orchestration du service Next.js isolé du site PHP historique.

Hot Reload

Rechargement instantané pendant la migration section par section.

Environnement maîtrisé

Configuration reproductible entre développement, build et production.

Configuration Serveur VPS

Mise en place complète d'un environnement de production sécurisé.

Serveur VPS Linux

Création et administration du serveur virtuel privé avec accès SSH complet.

Nginx en production

Configuration du reverse proxy vers le serveur Next.js et gestion des routes du portfolio.

Build Next.js standalone

Compilation optimisée du site, génération des routes et préparation de l’image Docker de production.

Cloudflare SSL/TLS

Proxy Cloudflare, certificat HTTPS, protection réseau et configuration DNS.

Nom de domaine

Rattachement du domaine personnalisé avec les enregistrements DNS adaptés.

Sécurité & Firewall

Durcissement SSH, firewall UFW et limitation des ports exposés.

Pipeline CI/CD GitHub Actions

Déploiement automatique en production à chaque évolution validée.

Déploiement continu automatisé

Le pipeline GitHub Actions construit l'image Docker Next.js, la pousse sur GHCR puis la déploie sur le VPS via SSH avec healthchecks avant bascule Nginx. La mise en production reste reproductible et ne dépend pas de manipulations manuelles.

Push Git

Commit des modifications sur GitHub.

Install & Build

Installation des dépendances et génération du build Next.js.

Validation

Lint, build et contrôles avant déploiement.

Deploy SSH

Publication automatique sur le VPS.

Stack Technique

Technologies et outils utilisés pour la version Next.js du portfolio.

Next.js

Next.js

Rendu serveur, metadata SEO par page, routes App Router et API de contact intégrée.

React

React

Interface découpée en composants réutilisables avec données séparées du JSX.

CSS3

CSS Modules

Styles isolés par composant, tokens CSS et variables globales.

Docker

Docker

Image de production sécurisée, service isolé et healthchecks avant bascule.

Nginx

Nginx

Serveur web de production pour servir le portfolio et gérer les routes.

Cloudflare

Cloudflare

DNS, HTTPS, cache et protection réseau autour du domaine.

GitHub Actions

Pipeline CI/CD pour automatiser les validations et le déploiement.

Git

Git

Versioning du code et suivi propre de la migration.