How oneathetop/implementation works
This repository is a QR-oriented phishing-detection API with a Flutter mobile-app shell. The supported backend workflow accepts a URL at the FastAPI prediction endpoint, applies URL-based risk checks, and returns a prediction with explanations and advice. The tree also contains a separate ML module and an explainer service, but their wiring is not shown in the sampled source. Flutter platform launchers are present; the Dart application source and any mobile-to-backend connection are absent from the supplied tree.
Main entry points: app.py FastAPI Routes · predictor.py URL Risk Predictor
Components 15
Backend API
- FastAPI Routes
backend/app.py
Risk Analysis
- URL Risk Predictor
backend/services/predictor.py - Explainer Service
backend/services/explainer.py
Mobile Shell
- iOS Launcher
mobile_app/ios/Runner/AppDelegate.swift - macOS Window
mobile_app/macos/Runner/MainFlutterWindow.swift - Windows Launcher
mobile_app/windows/runner/main.cpp - Linux Launcher
mobile_app/linux/runner/main.cc
ML Components
- Preprocessing
backend/ML/preprocess.py - Feature Extraction
backend/ML/feature_extractor.py - Model Training
backend/ML/train.py - ML Prediction
backend/ML/predict.py - Model Evaluation
backend/ML/evaluate.py - ML Configuration
backend/ML/config.py
Other components
- URL Submitter
- Risk Result
Connections 4
- URL Submitter → FastAPI Routes: submits URL
- FastAPI Routes → URL Risk Predictor: calls prediction
- URL Risk Predictor → FastAPI Routes: returns assessment
- FastAPI Routes → Risk Result: returns response