
Le projet traite des contraintes spécifiques:
Il ne devrait pas y avoir plus d'une classe d'enseignants en même temps.
Il ne devrait y avoir qu'un seul enseignant affecté à chaque classe lors d'une conférence.
Un enseignant ne peut pas enseigner plus d'un sujet à une classe.
Chaque sujet peut être attribué à une classe au maximum une fois.
Les heures de crédit ne peuvent pas dépasser les heures de contact.
Il ne peut y avoir qu'une seule conférence d'un enseignant / d'un sujet dans une classe par jour.
La fonction de disposition des conférences est disponible pour permettre aux utilisateurs de décider comment plusieurs conférences d'un sujet peuvent apparaître dans le calendrier.
L'utilisateur peut définir des conférences maximales par jour et les jours ouvrables par semaine.
Windows OS: Windows OS est utilisé pour le développement de ce projet en raison de son interface conviviale.
VScode: VScode est utilisé comme éditeur pour ce projet en raison de sa forte compatibilité avec JavaScript & React.
React.js: React Library est utilisé pour construire le frontage du projet en raison de sa grande évolutivité et d'un grand nombre d'outils et de packages pour aider au développement.
Node: le nœud est utilisé comme backend du projet pour fournir des services backend-APIS.
Express JS: Express.js, un cadre pour le nœud est utilisé pour concevoir les API du projet.
Node Package Manager: NPM est utilisé pour gérer les dépendances du projet.
Authentification Firebase: l'authentification Firebase fournit des méthodes de connexion sécurisées, conviviales et multiples avec de nombreuses fonctionnalités essentielles, notamment l'oubli de mot de passe et le mot de passe de changement.
Cloud Firestore Database: Cloud Firestore est utilisé comme base de données pour ce projet en raison de ses performances efficaces et de nombreuses fonctionnalités intégrées sécurisées pour accélérer le développement et fournir une base de données distante pour l'application déployée.
Interface utilisateur matérielle: l'interface utilisateur du matériau est utilisée comme norme pour le frontend du projet en raison de son apparence et de sa simplicité premium.
Assurez-vous d'avoir les outils suivants, installés sur votre système.
Étape 1. Clone le référentiel: Ouvrez Gitbash dans votre répertoire souhaité et exécutez la commande suivante:
git clone https://github.com/seyed-sabbagh/timetable_Uni
Étape 2. Ouvrez deux terminaux:
Définissez le chemin du premier terminal vers la racine du dossier du projet, qui aurait / CS311S20PID08 à la fin du chemin. Ce terminal exploitera le frontend du projet.
Pour le deuxième terminal, définissez son chemin vers le dossier backend , situé dans le répertoire racine, ou vous pouvez initialiser son chemin à partir du répertoire racine, qui aura le même chemin que du premier terminal, puis vous pouvez exécuter la commande suivante pour définir son chemin vers le dossier backend.
cd backend
Étape 3. Installez les packages / dépendances NPM requis:
Pour installer les dépendances de Frontend et Backend, exécutez la commande suivante dans les deux terminaux:
npm install
Assurez-vous d'exécuter la commande susmentionnée pour les deux terminaux sans aucune erreur.
Étape 4. Exécutez le projet:
En supposant maintenant que votre système dispose de toutes les dépendances nécessaires pour exécuter le projet, il est maintenant défini pour exécuter votre système.
Maintenant, pour la dernière étape, exécutez la commande suivante dans les deux terminaux pour démarrer le projet:
npm start
Le lien de l'application apparaîtra dans le terminal frontal.
Pour la prochaine fois, vous devez suivre les étapes 2 et 4 seulement.
Dans le cas de toute question concernant l'installation du projet, n'hésitez pas à abandonner un courrier à: