Le but de ce projet est de réaliser une application web en utilisant NodeJs et React.
Cette Application permettra la gestion d'un emploi du temps des étudiants de la promo sur une semaine. Il y aura 2 points d'entrée, à cette application.
Le site web, qui vous permettra de consulter, mettre a jour l'emploi du temps.
Le bot discord, qui vous permettra de la meme manière de consulter l'emploi du temps et de le mettre à jour.
L'ensemble des données sera stocké dans un fichier spreadsheet, avec lequel il faudra communiquer (lien).
1- Site web / non connecté
- Sur la page d'accueil, on dispose d'un menu et d'un ensemble de texte/image décrivant votre site (laisser place à votre imagination)
- Le menu devra comporter un lien de connection
- Le menu devra comporter un lien vers la liste des emplois du temps
- il faudra avoir une page comportant la liste des emplois du temps
- permettre de filtrer les emplois du temps par étudiant
- il faudra pouvoir visualiser un étudiant en cliquant dessus, et ainsi avoir une fiche contenant l'emploi du temps de l'étudiant ainsi que la date de derniere maj
2- Connection
- Utiliser l'api discord afin de gérer la connection
3- Site web / connecté
- Une fois connecté, un lien supplémentaire apparaitra dans le menu "Modifier"
- L'utilisateur pourra alors mettre à jour son emploi du temps
4- BOT discord
- Vous devrez créer un bot discord, qui vous permettra d'effectuer les operations suivantes
- l'utilisateur pourra consulter l'emploi du temps d'un étudiant pour une heure donnée, pour un jour donné
- L'utilisateur pourra mettre à jour son emploi du temps pour un jour donné, pour une heure donnée
- Le bot sera ajouter sur le serveur discord AAW MODULE.
- Vos commande devront être préfixé par un identifiant unique (trigramme de vos nom de famille), permettant d'éviter les doublons (ie: /trd-skills, /trd-set-skill)
- il faudra dans le readme me fournir la liste des commandes ;)
4- Sécurité
- Il faudra mettre en place un mécanisme de token stocké en base de données
- Ce token doit avoir une expiration
5- Administration
- Il y aura un rôle administrateur, vous devrez donc gérer un schéma vous permettant de savoir si un utilisateur est admin.
- l'administrateur devra pouvoir modifier l'emploi du temps de n'importe quel utilisateur
- Déconnecter un utilisateur