Spam Detector est une application web permettant d’analyser des emails pour détecter s’ils sont du spam, du phishing ou des promotions. L'application offre des fonctionnalités d’analyse via un formulaire ou par glisser-déposer de fichiers, et conserve un historique des analyses effectuées.
-
Analyse d'emails :
- Saisie manuelle (objet et contenu) via un formulaire.
- Import de fichiers (.json, .txt, .eml, .docx) pour analyse.
-
Résultats détaillés :
- Probabilités pour chaque catégorie (spam, phishing, promotion).
- Analyse des mots-clés et des liens détectés (avec identification des liens malveillants).
-
Historique :
- Consultation des analyses précédentes.
-
Authentification sécurisée :
- Inscription et connexion via des comptes utilisateurs.
-
Collaboration :
- Projet open-source, contributions ouvertes à tous. Voir CONTRIBUTING.md.
Cloner le dépôt GitHub sur votre machine locale :
git clone <url-du-repository>
cd spam-detector-project-AOS
Par défaut, des fichiers .env
sont présent à la racine des répertoires auth-services
et spam-detector-backend
, cependant ils peuvent ne pas correspondre à votre environnement. Alors créez un fichier .env
à la racine de chaque dossier (auth-services
, spam-detector-backend
) et ajoutez-y les variables nécessaires.
Exemple de fichier .env
pour auth-services
:
MONGODB_URI=mongodb://localhost:27017/auth-service
JWT_SECRET=clesecrete
Exemple de fichier .env
pour spam-detector-backend
:
MONGODB_URI=mongodb://localhost:27017/spam-detector
VIRUSTOTAL_API_KEY=c59ea4bc9b1db78f7492244ce9425458a287efdf9fe80d46097d0c11aaad2712
JWT_SECRET=clesecrete
FILE_ANALYZER_PORT=5002
PORT=5001
L'application utilise MongoDB comme base de données principale. Vous avez deux options pour configurer MongoDB : utiliser MongoDB Atlas (hébergement cloud) ou une instance locale.
-
Créer un compte MongoDB Atlas :
- Rendez-vous sur MongoDB Atlas et créez un compte.
-
Créer un cluster gratuit :
- Suivez les instructions pour créer un cluster.
- Une fois le cluster créé, cliquez sur Connect et sélectionnez Connect Your Application.
-
Obtenir l’URI MongoDB :
- Copiez l’URI généré (par exemple :
mongodb+srv://<username>:<password>@cluster0.mongodb.net/myFirstDatabase
).
- Copiez l’URI généré (par exemple :
-
Remplir le fichier
.env
:- Remplacez
<username>
,<password>
etmyFirstDatabase
par vos informations MongoDB. - Exemple pour
auth-services
:MONGODB_URI=mongodb+srv://user-test:[email protected]/auth-service
- Remplacez
-
Installer MongoDB :
- Téléchargez et installez MongoDB depuis le site officiel.
-
Lancer le service MongoDB :
- Sur votre machine, démarrez MongoDB. Par défaut, MongoDB est disponible sur
mongodb://localhost:27017
.
- Sur votre machine, démarrez MongoDB. Par défaut, MongoDB est disponible sur
-
Configurer le fichier
.env
:- Remplissez le fichier
.env
avec l’URI de votre instance locale. - Exemple pour
auth-services
:MONGODB_URI=mongodb://localhost:27017/auth-service
- Remplissez le fichier
Préférez l'option 1 pour maximiser ses chances de comptatibilité avec la version du code présente sur le Git
Pour vérifier que MongoDB est bien configuré :
- Lancez le projet avec Docker :
docker-compose up
- Vérifiez les logs dans la console pour vous assurer que les services
auth-services
etspam-detector-backend
se connectent correctement à MongoDB.
Construire les images :
docker-compose build
Lancer les services :
docker-compose up
Les services seront disponibles sur :
- Frontend : http://localhost:5173
- Backend : http://localhost:5001
- Auth-service : http://localhost:4000
- Rendez-vous sur http://localhost:5173.
- Connectez-vous ou créez un compte.
- Saisissez un email dans le formulaire ou glissez-déposez un fichier dans la zone dédiée.
- Consultez les résultats d’analyse.
- Accédez à la section Historique pour voir les analyses précédentes.
Nous accueillons les contributions ! Consultez CONTRIBUTING.md pour plus de détails.
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.