Créé par Daniel Falkov dans le cadre d'un projet scolaire au lycée Saint Jean & La Croix à Saint Quentin, Aisne.
Le professeur lance le logiciel à partir de son ordinateur, les élèves peuvent dès le lancement du serveur par le biais du logiciel rejoindre la session de quiz en cours à partir d'un navigateur web sur l'addresse ip du professeur au port 3333:
http://<IP v4 locale du prof>:3333
Attention: la machine du professeur doit être connectée au même réseau que celles des élèves.
Voici les étapes à suivre pour compiler soi-même le logiciel:
1- Assurez-vous d'avoir installé npm.
2- Clonez le projet sur votre machine:
- Par le terminal/cmd (git doit être installé):
git clone https://github.com/Dan149/la-croix-quiz-logiciel-prof
- ou téléchargez le zip sur la page d'accueil du projet.
3- Depuis le terminal, dans le dossier du projet, installez les dépendences: npm install
4- Pour finir, compilez: npm run build
L'exécutable se trouvera dans le dossier release, dans le sous-dossier portant le nom de la version.
Le logiciel se décompose en 3 parties principales ayant chacun une fonction et des principes de fonctionnement propres:
- Le processus principal: partie du logiciel du professeur qui effectue des opérations sur l'ordinateur (démarrer le serveur, intéragir avec le système de fichiers, ouvrir la fenêtre etc..."), ce processus se trouve dans
electron/main.ts
. - L'interface utilisateur: Interface affichée au professeur, démarée dans une fenêtre par le processus principal, intéragissant avec celui-ci à l'aide d'un tunnel semblable à une API qui se trouve dans le fichier
electron/preload.ts
. L'interface est codée comme un site web, plus d'informations dans la partie technologies employées, elle se situe dans le dossiersrc/
. - L'application web: Site web se trouvant sous forme "compilée" dans le dossier
public/client
, il est envoyé à chaque utilisateur (élève) se connectant au serveur. Le site web est codé séparément par moi-même, dans un répértoire Github privé différent, il possède donc un nom de version lui étant propre.
Le processus principal lui aussi est codé en JavaScript, grâce à un environnement d'exécution nommé Node.js, qui permet l'éxecution de JS hors navigateur classique. Les feuilles de styles en cascade pour les interfaces sont codées au format Sass (dérivée .scss), qui est ensuite "compilé" vers du CSS standard.