Resume Portfolio
Crée le portfolio de l'utilisateur à l'aide des templates du dépôt Resume Studio. Le site est déjà entièrement construit ; le travail de cette compétence consiste à retranscrire les faits. Au lieu de concevoir une nouvelle mise en page, concentrez-vous sur le remplissage précis du fichier content/profile.json.
Si le dossier actuel contient les répertoires gallery/ et templates/, il s'agit du dossier Resume Studio. Sinon, demandez son emplacement à l'utilisateur ; s'il ne l'a pas téléchargé, guidez-le avec git clone https://github.com/roadkwonai/resume-studio.git suivi de npm install. Tous les chemins ci-dessous sont relatifs à ce dossier.
1. Collecte des documents et choix du template
Ces deux étapes incombent à l'utilisateur, demandez-les donc en une seule fois.
Afficher la galerie. Exécutez npm run studio en arrière-plan (le premier lancement nécessite une compilation qui prend quelques minutes). Lorsque http://localhost:4100 répond, ouvrez-le dans le navigateur. Si l'utilisateur a déjà mentionné un template, vous pouvez ignorer la galerie.
Demandez en un seul message :
- Le chemin du fichier CV ou son contenu copié-collé
- La demande de choisir un template dans la galerie (le bouton "Sélectionner ce template" à l'écran enregistre le choix dans
selection.json) - Si disponibles : le poste visé, la langue du site (coréen/anglais), la photo de profil, les images de projet, les liens GitHub, etc.
Si l'utilisateur hésite, faites des recommandations en fonction de la quantité de documents. Les justifications des recommandations se trouvent dans references/templates.md.
Lorsque l'utilisateur déclare avoir fait son choix dans la galerie, lisez selection.json pour le confirmer. Ce fichier n'enregistre que le dernier clic, il peut donc contenir une valeur obsolète. Si l'utilisateur a nommé le template, sa parole prévaut.
2. Rédaction de profile.json
Lisez references/profile-guide.md ainsi que le fichier templates/<id>/content/README.md du template choisi, puis rédigez profile.json dans le scratchpad. La spécification est shared/profile.ts.
N'ajoutez aucun contenu sans source. Le portfolio est un document que les recruteurs lisent comme factuel. L'ajout de chiffres, d'avis ou de périodes inexistants pourrait mettre l'utilisateur en difficulté lors d'un entretien et constituer une fausse déclaration de carrière. Les champs vides disparaissent automatiquement de l'affichage, il est donc toujours plus sûr de les laisser vides. Reformuler les phrases est acceptable, mais ne gonflez pas les faits. Par exemple, écrire "développement d'un système de paiement" comme "j'ai développé un système de paiement" est correct, mais écrire "système de paiement pour des millions d'utilisateurs" ne l'est pas.
Ne transférez que les informations pouvant être rendues publiques. Le CV est un document privé destiné aux entreprises, tandis que le site est visible par tous. Ne transférez pas les numéros d'identification nationale, l'adresse personnelle, la date de naissance, les informations familiales, les détails du service militaire ou le salaire. N'incluez le numéro de téléphone qu'avec le consentement de l'utilisateur.
Si les documents sont multiples ou volumineux, lisez references/sources.md. Ce fichier fournit des critères pour gérer les divergences entre les sources et décider quoi retenir.
Après avoir rédigé le fichier, validez son format avec :
npm run validate -- <fichier>
3. Génération du portfolio
npm run new -- <template-id> <slug> <chemin-vers-profile.json>
Si l'utilisateur a nommé le template, utilisez son identifiant ; si vous suivez le choix de la galerie, écrivez selected à la place de <template-id>. Le slug est le nom de l'utilisateur en minuscules anglaises (exemple : hong-gildong). Ensuite :
- Copiez (ne déplacez pas) les photos, images et le CV PDF dans
portfolios/<slug>/public/profile/. - Écrivez les chemins des images dans profile.json sous la forme
/profile/nom_du_fichier. - Proposer le CV PDF en téléchargement via
basics.resumeFilerend le PDF entier public. Vérifiez avecpdftotextsi le PDF contient des informations privées (numéro de téléphone, adresse) qui ont été omises du site. Mentionnez-le obligatoirement dans le rapport. Ne modifiez pas le fichier vous-même. - Lisez le fichier
content/site.ko.jsonpour les textes fixes du site. Si des affirmations comme "contribution à l'open source" ne correspondent pas à la personne, corrigez-les en fonction des faits. - Si vous souhaitez modifier des textes, modifiez
content/site.ko.json. Ne touchez pas aux composants. Ne modifiez un composant qu'en cas de besoin absolu d'une expression non prévue par la spécification, et informez-en l'utilisateur.
4. Validation
npm run verify -- <slug>
Cette commande vérifie en une seule fois le format, la compilation de production, et l'absence de traces du modèle de démonstration. Si elle réussit, lancez npm run start -w @resume/portfolio-<slug> en arrière-plan pour visualiser le site réel à 1440 px et 390 px. Si vous avez reconstruit le projet, vous devez arrêter le serveur précédent ; le nouveau serveur ne servira pas correctement la nouvelle version et générera des erreurs 500. Les points à vérifier incluent les sauts de ligne pour les noms d'entreprise ou de projet longs, les débordements horizontaux, les zones vides, les emplacements des photos, et les noms mal capitalisés (par exemple, SaaS écrit "SAAS"). Si le contenu casse la mise en page, réduisez d'abord le texte incriminé (en conservant les faits) avant de modifier le template.
Enfin, revérifiez une dernière fois les chiffres et les noms propres de profile.json par rapport au CV original.
5. Transmission
Informez l'utilisateur :
- De l'URL d'accès et du chemin du portfolio
- Des sections manquantes par manque de données et de l'ordre de priorité pour les compléter
- Des éléments que ce template n'affiche pas (indiqués dans le
content/README.mdde chaque template). Par exemple, si le template ne montre pas la formation, assurez-vous de le signaler - Des informations personnelles volontairement omises du CV, et de celles qui restent dans le PDF téléchargeable
- Des valeurs divergentes entre les sources, de la valeur choisie, et des projets retirés lors du filtrage
- Des phrases reformulées que l'utilisateur doit vérifier
Le déploiement est un acte public : ne le faites qu'à la demande de l'utilisateur. Le dossier du portfolio est une application indépendante qui peut être déployée telle quelle.
Les dossiers portfolios/ et les fichiers PDF ainsi que selection.json sont inclus dans .gitignore et ne sont pas commités dans le dépôt Resume Studio. Si des fichiers tels que le CV, les photos ou les coordonnées de l'utilisateur doivent être poussés sur un dépôt public, montrez d'abord la liste des fichiers à uploader et obtenez une confirmation.
En cas de demande de modification
S'il s'agit d'un portfolio déjà créé, modifiez uniquement portfolios/<slug>/content/profile.json et répétez l'étape 4.
Pour changer de template, créez un nouveau slug avec le même profile.json. Le format étant identique, il n'est pas nécessaire de réécrire le contenu. Ne supprimez pas l'ancien dossier tant que l'utilisateur ne le demande pas.