Skip to content

Logiciel de création de quiz pour enseignants. Fabriqué avec ❤️ par l'initiative du Lycée Saint Jean & La Croix à Saint Quentin.

License

Notifications You must be signed in to change notification settings

Dan149/la-croix-quiz-logiciel-prof

Repository files navigation

La Croix Quiz

Logiciel de création de quiz scolaire

Créé par Daniel Falkov dans le cadre d'un projet scolaire au lycée Saint Jean & La Croix à Saint Quentin, Aisne.


Connexion

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.


Compilation

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.


Captures d'écran

Afficher les images

Copie d'écran_20240331_205917 Copie d'écran_20240331_210021 Copie d'écran_20240331_210043 Copie d'écran_20240331_210108 Copie d'écran_20240331_210206 Copie d'écran_20240331_210255 Copie d'écran_20240331_210328


Documentation interne (pour développeurs):

Index:

Structure du logiciel

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 dossier src/.
  • 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.

Technologies employées

Le site web et l'interface du logiciel sont tous deux codés avec la même librairie JavaScript: React, qui permet de générer un fichier html unique, affiché par l'utilisateur.
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.