{"id":22200033,"url":"https://github.com/betagouv/eva","last_synced_at":"2025-07-27T02:32:55.318Z","repository":{"id":33758133,"uuid":"136347369","full_name":"betagouv/eva","owner":"betagouv","description":"Évaluer en ligne les compétences transversales à travers des mises en situation professionnelles","archived":false,"fork":false,"pushed_at":"2024-03-28T18:14:24.000Z","size":220492,"stargazers_count":15,"open_issues_count":43,"forks_count":3,"subscribers_count":8,"default_branch":"develop","last_synced_at":"2024-04-11T09:22:06.769Z","etag":null,"topics":["competences","docker","nodejs","npm","webpack4"],"latest_commit_sha":null,"homepage":"https://eva.beta.gouv.fr/jeu/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/betagouv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-06-06T15:18:28.000Z","updated_at":"2024-05-27T12:20:53.305Z","dependencies_parsed_at":"2024-03-28T15:04:45.243Z","dependency_job_id":"431b7e2f-00d8-4112-8189-d60907235c67","html_url":"https://github.com/betagouv/eva","commit_stats":null,"previous_names":[],"tags_count":97,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/betagouv%2Feva","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/betagouv%2Feva/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/betagouv%2Feva/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/betagouv%2Feva/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/betagouv","download_url":"https://codeload.github.com/betagouv/eva/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227750180,"owners_count":17814129,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["competences","docker","nodejs","npm","webpack4"],"created_at":"2024-12-02T15:19:42.355Z","updated_at":"2024-12-02T15:19:42.993Z","avatar_url":"https://github.com/betagouv.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eva\n\nÉvaluer en ligne les compétences transversales à travers des mises en situations professionnelles.\n\nhttps://beta.gouv.fr/startup/eva.html\n\n[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)\n[![js-semistandard-style](https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg?style=flat-square)](https://github.com/Flet/semistandard)\n\nPour voir les autres projets de eva :\n\n- [la partie serveur](https://github.com/betagouv/eva-serveur)\n\nAnciens dépôts que nous n'utilisons plus aujourd'hui :\n\n- [la partie orchestration](https://github.com/betagouv/eva-orchestrateur)\n- [le site web](https://github.com/betagouv/eva-www)\n\n## Configuration de l'environnement\n\n### Dépendences\n\n* node.js (dont la version est spécifié dans le fichier `.tool-version`)\n\npour le développement :\n* OptiPNG version 0.7.7 ou supérieur\n\nCette utilitaire doit être installé au niveau système.\n\n### Installer node\n\nNous recommandons l'utilisation d'`asdf` pour installer node.\n* https://asdf-vm.com/\n* https://github.com/asdf-vm/asdf-nodejs\n\n### Assigner les variables d'environnement\n\n#### Soit dans un fichier .env\n\nNécessite que votre machine interprète le fichier, avec par exemple [le plugin dotenv](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/dotenv) de Oh My Zsh\n\n```\n# Indispensables\n# --------------\n\n# Adresse du serveur local\nURL_API=http://localhost:3000/pro\n\n# Optionnelles\n# ------------\n\n# Pour la gestion des erreurs\nJETON_CLIENT_ROLLBAR=\nROLLBAR_ENV=\n\n# Pour afficher un message à tout le monde\nANNONCE_GENERALE=\n\n# Pour les analytics\nHOTJAR_ID=\nMATOMO_ID=\n```\n\n#### Soit directement en ligne de commande\n\n```\nexport URL_API=http://localhost:3000/pro\n```\n\n## Démarrer un serveur Webpack en local (mode développement)\n\n\n### Démarrer l'application avec webpack server\n\n```\n$\u003e npm install \u0026\u0026 npm run dev\n```\n\nEt se rendre sur l'adresse affichée dans la sortie standard (http://localhost:7700 par défaut)\n\n## Démarrer l'application avec docker (mode production)\n\nInstaller `docker` si nécessaire, et exécuter la commande suivante.\n\n```\n$\u003e docker build -t eva . \u0026\u0026 docker run --rm -ti -p 3000:80 eva\n```\n\nUne fois le message `Successfully tagged eva:latest` affiché, se rendre à l'adresse http://localhost:3000\n\n## Lancer les tests\n\nPour les tests, nous utilisons `jest`\n\n```\nnpm test\n```\n\nEt en mode \"watch\" :\n\n```\n$\u003e npm test -- --watch\n```\n\n## Travailler avec le linter\n\nPour demander au linter de tenter de corriger les problèmes lancer :\n\n```\n$\u003e npm run lint -- --fix\n```\n\nCertaines dépendences sont définies globalement dans webpack (ex. jQuery, mocha, etc.) et, à moins qu'elles soient déclarées comme « à ignorer », génèreront une erreur au niveau du linter. Pour déclarer au linter une dépendance globale à ignorer, l'ajouter dans le hash de configuration défini dans `package.json` :\n\n```\n\"semistandard\": {\n  \"globals\": [\n    \"jQuery\",\n    // etc.\n  ]\n}\n```\n\nIl est également possible de demander au linter d'accepter les dépendances définies globalement en les déclarant en commentaire au début du fichier source :\n\n```\n/* global jQuery, etc. */\n\n// début du code source\n```\n\nTous les commits doivent passer le linter. À ce titre, nous recommandons\nd'ajouter la ligne suivante à la fin du script `.git/hooks/pre-commit`, à condition que votre script ne contienne pas déjà une commande `exec` :\n\n```\nexec /usr/local/bin/npm run lint -- --silent\n```\n\nSi vous êtes partis du template `.git/hooks/pre-commit.sample` vous pouvez simplement remplacer la ligne `exec git diff-index --check --cached $against --` car le linter fera le travail de vérification des espaces.\n\n## Licence\n\nCe logiciel et son code source sont distribués sous [licence AGPL](https://www.gnu.org/licenses/why-affero-gpl.fr.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbetagouv%2Feva","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbetagouv%2Feva","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbetagouv%2Feva/lists"}