Portfolio personnel développé avec Next.js, présentant mon parcours, mes compétences et mes projets en tant qu'étudiant en L2 MIASHS passionné par le développement web et la Data Science.
| Catégorie | Technologie |
|---|---|
| Framework | Next.js 14 (App Router) |
| Langage | TypeScript |
| Styling | Tailwind CSS |
| Animations | Motion |
| Envoi de mails | Resend |
| Icônes | Iconify |
| Déploiement | Vercel |
- Single-page — navigation fluide entre les sections via scroll smooth
- Navbar fixe avec effet underline animé au survol
- Section Hero — accroche, présentation rapide et liens CTA
- Section À propos — parcours, photo, carte de localisation et téléchargement du CV
- Section Projets — grille de cartes extensible avec liens GitHub et démo
- Section Compétences — niveaux visuels et modal descriptif au survol de chaque compétence
- Section Contact — formulaire intelligent avec sujets dynamiques (Information / Projet / Autres) et envoi de mail via Resend
- Node.js >= 18
- npm ou yarn
# Cloner le dépôt
git clone https://github.com/ton-username/portfolio.git
cd portfolio
# Installer les dépendances
npm installCrée un fichier .env.local à la racine du projet :
RESEND_API_KEY=re_xxxxxxxxxxxxxxxxxxxxObtiens ta clé API sur resend.com — gratuit jusqu'à 3 000 mails/mois.
npm run devOuvre http://localhost:3000 dans ton navigateur.
portfolio/
├── app/
│ ├── layout.tsx # Layout global + métadonnées
│ ├── page.tsx # Page principale (assemblage des sections)
│ ├── globals.css # Styles globaux + scroll-behavior: smooth
│ └── api/
│ └── contact/
│ └── route.ts # Route API Resend pour le formulaire de contact
├── components/
│ ├── Navbar.tsx
│ ├── Hero.tsx
│ ├── About.tsx
│ ├── Projects.tsx
│ ├── Skills.tsx
│ └── Contact.tsx
├── public/
│ ├── about.jpg # Photo de profil
│ └── CV_Hoareau_Cedric.pdf
├── .env.local # Variables d'environnement (non versionné)
├── .gitignore
└── README.md
Ce portfolio est hébergé sur Vercel, la plateforme des créateurs de Next.js.
- Crée un compte sur vercel.com si ce n'est pas déjà fait
- Importe le dépôt GitHub depuis le dashboard Vercel
- Ajoute la variable d'environnement
RESEND_API_KEYdans Settings → Environment Variables - Clique sur Deploy — Vercel détecte automatiquement Next.js
Chaque git push sur la branche main déclenche un redéploiement automatique.
Dans components/Projects.tsx, ajoute un objet au tableau projects :
{
title: "Nom du projet",
description: "Ce que fait le projet en 2-3 phrases.",
tags: ["Python", "Next.js"],
github: "https://github.com/ton-username/projet",
href: "https://demo-projet.vercel.app", // optionnel
year: "2025",
}Hoareau Cédric — Étudiant L2 MIASHS, La Réunion 🇷🇪