A web-based spam detection system built with React, Flask, and scikit-learn, capable of classifying SMS messages as spam or not spam in real-time.
This project was developed as part of our academic internship, where our goal was to build a reliable machine learning model to distinguish between spam and ham (non-spam) SMS messages using Natural Language Processing (NLP) techniques.
We used Python’s machine learning ecosystem to train, evaluate, and deploy a lightweight spam classifier accessible via a modern web interface.
- Faruk Khan
- Mridul Roy
- Mriganka Jyoti Deka
- Sanjeev Iqbal Ahmed
- Sourav Sharma
- 📊 Instant SMS Analysis – Get real-time spam detection results
- 🔍 Spam Classification – Classifies messages as Spam ❌ or Not Spam ✅
- ⚡ Fast & Lightweight – Efficient predictions through pre-trained model
- 🌎 Online Access – Hosted using Render for seamless usage
| Technology | Purpose | Version |
|---|---|---|
| React ⚛️ | Frontend UI | 18.2.0+ |
| Flask 🐍 | Backend API | 2.3.2+ |
| scikit-learn 📊 | ML Model Training | 1.3.0+ |
| Pandas 📘 | Data Handling | Latest |
| NumPy 🔢 | Numerical Operations | Latest |
| Axios 🔗 | API Integration | Latest |
| Gunicorn 🚀 | Production WSGI | Latest |
| Tailwind CSS 🎨 | UI Styling | 3.3.0+ |
- 📂 Dataset: SMS Spam Collection Dataset
- 🧠 ML Techniques:
- Feature Extraction:
TF-IDF Vectorizer - Algorithms:
Multinomial Naïve Bayes,Logistic Regression - Final Model:
MultinomialNBwithTF-IDF
- Feature Extraction:
- ✅ Evaluation Accuracy:
97.6%on test dataset - 📈 Evaluation Metrics Used: Accuracy, Precision, Recall, F1-score
🔗 Try it live: https://sms-spam-detector-b15e.onrender.com
- 📊 Add confidence score for predictions
- 🌍 Multi-language spam detection
- 📈 Improve dataset with real-world examples
- 📥 Add email spam detection model