refactor: factoriser le code en plusieurs fichiers #9
Reference in New Issue
Block a user
Delete Branch "feat/refactor-multi-files"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #8
Changements
css/form.css(page/formulaire) etcss/cv.css(rendu CV)js/main.js— point d'entrée, écoute la soumission du formulairejs/sections/identite.js— collect + render de la section Identitéjs/sections/competences.js— stub (à implémenter)js/sections/formation.js— stub (à implémenter)js/sections/experience.js— stub (à implémenter)js/sections/hobbies.js— stub (à implémenter)index.htmlutilise désormais<link>vers les CSS séparés et<script type="module">sections/{identite,competences,formation,experience,hobbies}/créés avec.gitkeepet README⚠️ Contrainte serveur local
Le projet utilise des ES Modules natifs. Ouvrir
index.htmlpar double-clic ne fonctionnera pas (blocage CORS surfile://).Cette contrainte est documentée dans le README.
- Déplace les styles inline vers css/form.css et css/cv.css - Crée js/main.js comme point d'entrée ES Module (type="module") - Extrait la logique identité dans js/sections/identite.js - Ajoute les stubs js/sections/{competences,formation,experience,hobbies}.js - Crée les dossiers sections/{identite,competences,formation,experience,hobbies}/ avec .gitkeep et README décrivant le contenu prévu - Met à jour index.html : liens CSS séparés, script type=module - Met à jour README.md : avertissement ES Modules, structure des fichiers@via tu peux le faire en typescript, et on serv avec bun par exemple
@via Les stubs js/sections/*.js sont trop vides — ajoute au moins les signatures des fonctions collect et render avec les JSDoc pour chaque section (formation, experience, hobbies, competences). Et renomme le dossier css/ en assets/ tant que tu y es.
✅ Modifications apportées suite au retour :
1. Dossier
css/→assets/Tous les fichiers CSS (form.css, cv.css, sections/*.css) ont été déplacés vers
assets/. Les imports dansindex.htmletjs/app.jssont mis à jour en conséquence.2. JSDoc + signatures dans les stubs de sections
Chaque stub (
formation.js,experience.js,hobbies.js,competences.js,langues.js) expose désormais deux fonctions documentées :collect()— lit les champs du formulaire, retourne un tableau typérender(data)— injecte les données dans l'aperçu CVLes types de retour et paramètres sont documentés avec JSDoc complet pour guider l'implémentation future.