Go to file
2025-10-02 17:20:12 +02:00
public added favicon and malt link 2025-10-02 15:33:45 +02:00
src changed laoding of background 2025-10-02 16:40:17 +02:00
.dockerignore fix: Corriger le Dockerfile pour le build avec toutes les dépendances 2025-10-02 17:04:30 +02:00
.env.portainer.example docker stack via git 2025-10-02 17:02:26 +02:00
.gitignore [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
bun.lockb [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
components.json [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
docker-compose.yml fix: remove image reference to build directly from source 2025-10-02 17:20:12 +02:00
Dockerfile fix: Corriger le Dockerfile pour le build avec toutes les dépendances 2025-10-02 17:04:30 +02:00
eslint.config.js [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
index.html optimization and moved link after description in project page 2025-10-02 16:37:04 +02:00
nginx.conf fix: nginx listen on all interfaces for Docker 2025-10-02 17:13:41 +02:00
package-lock.json uninstall terser 2025-10-02 17:09:40 +02:00
package.json background work 2025-10-02 15:19:51 +02:00
PORTAINER_DEPLOYMENT.md docker stack via git 2025-10-02 17:02:26 +02:00
PORTAINER_QUICK_START.md docker stack via git 2025-10-02 17:02:26 +02:00
postcss.config.js [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
README.md look good 2025-10-02 11:40:21 +02:00
SECURITY_GUIDE.md docker stack via git 2025-10-02 17:02:26 +02:00
tailwind.config.ts Add personal website structure 2025-10-02 07:26:26 +00:00
test added docker prod files 2025-10-02 16:54:31 +02:00
tsconfig.app.json [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
tsconfig.json [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
tsconfig.node.json [skip lovable] Use tech stack vite_react_shadcn_ts_20250728_minor 2025-10-02 07:24:10 +00:00
vite.config.ts fix: Utiliser esbuild au lieu de terser pour la minification 2025-10-02 17:07:43 +02:00

🌟 Portfolio d'Alexandre Pommier

Un portfolio moderne et interactif développé avec React, TypeScript et shadcn/ui, présentant mes projets et compétences techniques.

🚀 Aperçu

Ce portfolio présente mon parcours d'étudiant à 42 en informatique, avec une sélection de mes projets techniques les plus significatifs. Il intègre des animations fluides, un design responsive et un support multilingue (français/anglais).

Fonctionnalités

  • 🌙 Mode sombre/clair - Changement de thème avec persistance
  • 🌍 Multilingue - Support français et anglais
  • 📱 Responsive - Optimisé pour tous les appareils
  • 🎨 Animations - Interactions fluides avec Framer Motion
  • 🎯 Navigation intuitive - Barre de progression et navigation smooth
  • Performance - Construit avec Vite pour des temps de chargement optimaux

🛠️ Technologies utilisées

Frontend

  • React 18 - Interface utilisateur moderne
  • TypeScript - Typage statique pour une meilleure robustesse
  • Vite - Build tool rapide et moderne
  • Tailwind CSS - Framework CSS utilitaire
  • shadcn/ui - Composants UI élégants et accessibles

Librairies & Outils

  • Framer Motion - Animations et transitions
  • React Router - Navigation côté client
  • Lucide React - Icônes modernes
  • React Query - Gestion d'état et cache
  • React Hook Form - Gestion des formulaires
  • next-themes - Gestion des thèmes

Développement

  • ESLint - Linting et qualité du code
  • PostCSS - Traitement CSS
  • Bun - Gestionnaire de paquets rapide

📁 Structure du projet

pommier-portfolio/
├── public/                 # Assets statiques
├── src/
│   ├── components/        # Composants réutilisables
│   │   ├── sections/     # Sections principales du portfolio
│   │   └── ui/           # Composants UI (shadcn/ui)
│   ├── contexts/         # Contextes React (Theme, Language)
│   ├── hooks/            # Hooks personnalisés
│   ├── lib/              # Utilitaires et configurations
│   ├── pages/            # Pages de l'application
│   └── utils/            # Fonctions utilitaires et traductions
├── package.json
└── README.md

🚀 Installation et lancement

Prérequis

  • Node.js (version 18 ou supérieure)
  • Bun (recommandé) ou npm/yarn

Installation

# Cloner le repository
git clone https://github.com/kinou-p/pommier-portfolio.git
cd pommier-portfolio

# Installer les dépendances avec Bun
bun install

# Ou avec npm
npm install

Développement

# Lancer le serveur de développement
bun dev

# Ou avec npm
npm run dev

L'application sera accessible sur http://localhost:5173

Build pour la production

# Build de production
bun run build

# Prévisualiser le build
bun run preview

📋 Scripts disponibles

  • bun dev - Lance le serveur de développement
  • bun build - Build de production
  • bun build:dev - Build en mode développement
  • bun lint - Vérification du code avec ESLint
  • bun preview - Prévisualisation du build de production

🎨 Personnalisation

Thèmes

Le portfolio utilise CSS variables pour les couleurs, configurées dans src/index.css. Les thèmes sont gérés par next-themes.

Traductions

Les traductions sont centralisées dans src/utils/translations.ts. Pour ajouter une nouvelle langue :

  1. Ajouter les traductions dans l'objet translations
  2. Mettre à jour le contexte de langue si nécessaire

Contenu

  • Projets : Modifiez src/components/sections/ProjectsSection.tsx
  • Compétences : Modifiez src/components/sections/SkillsSection.tsx
  • Contact : Modifiez src/components/sections/ContactSection.tsx

🌟 Projets présentés

  1. Homemade NAS - Infrastructure personnelle complète
  2. Ft_Transcendence - Application web Pong en temps réel
  3. Cloud-1 - Infrastructure automatisée avec Docker/Ansible
  4. Minishell - Réimplémentation d'un shell bash en C
  5. Cube3D - Moteur 3D RayCaster
  6. etsidemain.com - Site vitrine pour conseil en transformation régénérative
  7. avopieces.fr - Plateforme juridique IA pour procédures de divorce

📱 Responsive Design

Le portfolio est entièrement responsive avec des breakpoints optimisés :

  • Mobile : < 640px
  • Tablet : 640px - 1024px
  • Desktop : > 1024px

🤝 Contribution

Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou proposer une pull request.

📄 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

📞 Contact

Alexandre Pommier


Développé avec ❤️ par Alexandre Pommier