npm install
npm start
Application disponible en local sur le port 8070.
Le projet devra être cloné sur votre machine locale à partir de l'URI suivante :
SSH :
git clone [email protected]:VirtuoWorks/eval-productivite.git
ou bien HTTPS :
git clone https://github.com/VirtuoWorks/eval-productivite.git
Vous créerez une branche que vous appellerez "eval" et vous vous positionnerez dessus. Ce sera votre branche de travail pour l'évaluation. Vous la fusionnerez avec la branche "main" à la fin de l'évaluation.
Basculez sur cette branche.
Installez les dépendances du projet en utilisant le gestionnaire de paquet npm
.
Si vous êtes bloqué sur cette question, passez à la suivante.
- Vous utiliserez JSDoc, dont la documentation peut être consultée ici
- Ajoutez vos modifications au dépôt sur la branche "eval" et faire un commit avec le titre de la question comme message.
Si vous êtes bloqué sur cette question, passez à la suivante.
- Vous utiliserez ESLint pour linter le code (ESLint est déjà installé dans le projet). La documentation est consultable ici
- Ajoutez vos modifications au dépôt sur la branche "eval" et faire un commit avec le titre de la question comme message.
Si vous êtes bloqué sur cette question, passez à la suivante.
- En utilisant Prettier, dont la documentation peut être trouvée ici, vous embellirez le code afin qu'il respecte les bonnes pratiques.
- Ajoutez vos modifications au dépôt sur la branche "eval" et faire un commit avec le titre de la question comme message.
Si vous êtes bloqué sur cette question, passez à la suivante.
Dans le projet a été intégrée une faille de sécurité béante...
Insérez la chaîne de caractères suivante dans le champ du formulaire :
"<script>for(let i = 1; i < 20; i++) { alert(`Coucou ${i} fois !`) }</script>"
- Corrigez cette faille de sécurité.
- Ajoutez vos modifications au dépôt sur la branche "eval" et faire un commit avec le titre de la question comme message.
Si vous êtes bloqué sur cette question, passez à la suivante.
Le code de l'application utilise deux fonctions principales permettant de récupérer des données depuis une API. Vous ferez en sorte de :
- Séparer les deux fonctions dans deux fichiers JS distincts qui exporteront le code de chaque fonction (par un export par défaut ou un export nommé) ;
- Créer un fichier main.js que vous placerez dans le dossier /public/js ;
- Importer les deux fonctions dans le fichier main.js ;
- Modifier le code du fichier index.html afin qu'il charge le script main.js ;
- Ajoutez vos modifications au dépôt sur la branche "eval" et faire un commit avec le titre de la question comme message.
Si vous êtes bloqué sur cette question, passez à la suivante.
- En utilisant Jest, qui est installé dans le projet, vous créerez un test unitaire pour chacune des deux fonctions présentes dans le fichier /public/js/functionsToTest.js (returnAnObject et multiplyAllByTwo).
- Ajoutez vos modifications au dépôt sur la branche "eval" faire un commit avec le titre de la question comme message.
Vous vérifierez bien que vos tests unitaires passent tous.
Si vous êtes bloqué sur cette question, passez à la suivante.
Vous fusionnerez votre branche "eval" avec la branche "main". Si vous avez des conflits de fusion, corrigez les.
Si vous êtes bloqué sur cette question, passez à la suivante.
Sur GitHub ou Bitbucket, à votre convenance, vous créerez un dépôt distant public afin de pouvoir y envoyer le code de votre application.
Si vous êtes bloqué sur cette question, passez à la suivante.
Changer l'url du dépôt distant (la notre) par celle de votre dépôt local (la votre) et envoyez le code de votre branche "main" sur votre dépôt distant nouvellement créé.
Une fois l'évaluation terminée, vous enverrez le lien vers votre dépôt distant à l'adresse e-mail [email protected] en précisant dans l'objet de l'e-mail les informations suivantes : [NOM] [prénom] [Promotion DIWJS]
Si vous n'avez pas réussi à créer le dépôt distant ou pousser votre branche sur le dépôt distant, vous pouvez créer une archive avec votre dossier de travail SANS le SOUS-DOSSIER node_modules
et l'envoyer par mail à l'adresse [email protected] en précisant dans l'objet de l'e-mail les informations suivantes : [NOM] [prénom] [Promotion DIWJS]