How ankush07261/intelligent-intrusion-detection-system works
This is a real-time intrusion-detection platform: it captures network packets, classifies traffic, stores prediction logs, and presents them in a web dashboard. The primary runtime path is backend packet capture to prediction and persistence, then API retrieval and dashboard visualization. Users can also log in, register users, and request model retraining. README and sampled source support the main workflow; some backend modules were not sampled, so their internal calls are not expanded.
Main entry points: main.py FastAPI application · api.js API client · App.js React routes · Dashboard.js Threat dashboard
Components 19
Traffic Capture
- Background capture
Dashboard/backend/extract.py - Captured packets
Dashboard/backend/capture_data.csv
Detection and Training
- Classifier training
Detection-Models/Models - Trained model
Dashboard/backend/attack_detector_model.pkl - Realtime prediction
Dashboard/backend/realtime_predict.py - Model retraining
Dashboard/backend/model_retrain.py
Backend Services
- FastAPI application
Dashboard/backend/main.py - Prediction retrieval
Dashboard/backend/convert.py - Login endpoint
Dashboard/backend/login.py - Registration endpoint
Dashboard/backend/registration.py - Database utilities
Dashboard/backend/db_utils.py
Web Dashboard
- React routes
Dashboard/frontend/src/App.js - Login screen
Dashboard/frontend/src/pages/Login.js - Threat dashboard
Dashboard/frontend/src/pages/Dashboard.js - API client
Dashboard/frontend/src/api.js - User management
Dashboard/frontend/src/components/AddUserModal.js
Other components
- Network traffic
- MySQL
- Dashboard user
Connections 23
- Network traffic → Background capture: provides packets
- FastAPI application → Background capture: starts capture
- Background capture → Captured packets: writes packets
- Captured packets → Realtime prediction: reads packets
- Classifier training → Trained model: saves model
- Trained model → Realtime prediction: loads model
- Realtime prediction → MySQL: stores predictions
- FastAPI application → Login endpoint: mounts router
- FastAPI application → Registration endpoint: mounts router
- Login endpoint → MySQL: authenticates
- Registration endpoint → MySQL: stores users
- FastAPI application → Prediction retrieval: requests predictions
- Prediction retrieval → MySQL: reads predictions
- FastAPI application → Model retraining: dispatches retraining
- Model retraining → Classifier training: rebuilds model
- Dashboard user → React routes: opens dashboard
- React routes → Login screen: routes login
- React routes → Threat dashboard: routes dashboard
- Login screen → API client: submits credentials
- Threat dashboard → API client: requests predictions
- Threat dashboard → API client: requests retraining
- User management → API client: registers user
- API client → FastAPI application: calls endpoints