Generateur de Portfolio
Presentation
Objectif principal : Un outil pour generer des sites portfolio statiques. On remplit un formulaire (nom, bio, projets, skills), on choisit un theme, et ca genere les fichiers HTML/CSS prets a deployer.
Technologies utilisees : Node.js pour le CLI, Handlebars pour les templates, plusieurs themes CSS pre-faits, Sharp pour optimiser les images, JSZip pour le download.
Fonctionnalites cles : Formulaire web ou fichier JSON en input, plusieurs themes au choix, preview live, generation de fichiers statiques, optimisation auto des images.
Livrables attendus : CLI npm + interface web. Au moins 3 themes differents. Documentation pour creer ses propres themes.
Calendrier previsionnel : Trois semaines. Creer les themes qui sont vraiment beaux ca prend du temps (je suis pas designer).
Parties prenantes & criteres de succes : Mes potes de promo qui galèrent a faire leur portfolio. Le critere c'est qu'ils arrivent a generer un site en moins de 10 minutes.
Le Defi
La flexibilite vs la simplicite. Si le formulaire a trop d'options c'est complique. Pas assez et les portfolios se ressemblent tous. Et les themes doivent marcher avec n'importe quel contenu (beaucoup de projets, peu de projets, etc.).
La Solution
Deux modes : simple (juste le necessaire) et avance (toutes les options). Les themes utilisent CSS Grid et Flexbox pour s'adapter au contenu. Conditions dans les templates pour cacher les sections vides. Preview live pour ajuster avant de generer.
Architecture Technique
CLI avec Commander.js pour les commandes (init, build, preview). Dossier themes/ avec un template Handlebars et CSS par theme. Module generator.js qui compile template + data. Module optimizer.js qui minifie CSS/JS et compresse images. Interface web optionnelle en Express qui wrap le CLI.
Points Cles
- Generation statique (pas de backend)
- Themes interchangeables
- Optimisation automatique
Apercu
Resultats & Apprentissages
Plusieurs potes ont utilise l'outil et ont leur portfolio maintenant. Ca m'a appris a creer des CLI user-friendly et a penser "template" (separation contenu/presentation). Les generateurs de sites statiques c'est un concept puissant.
Evolutions Futures
Import depuis LinkedIn/GitHub pour pre-remplir. Plus de themes. Editeur visuel drag-and-drop. Deploy automatique sur GitHub Pages ou Netlify.