Fraud Detection CLI SaaS for Bank Transactions
CipherWatch is a real-time fraud detection SaaS application designed for bank transaction analysis. It features a CLI-inspired web interface, robust backend powered by machine learning, and instant feedback for transaction legitimacy. Built for reliability, speed, and security, CipherWatch helps financial professionals quickly identify and review suspicious activity.
- Terminal-style Web UI: ASCII art, JetBrains Mono font, and CRT effects for an authentic CLI experience.
- Dynamic Boot Sequence: Simulates system initialization and backend health checks.
- Real-time Fraud Prediction: ML-powered backend (Flask, scikit-learn) with confidence scores and model metrics.
- Transaction Analysis: Input, analyze, and log transactions with instant feedback.
- Analysis Logs: View and manage transaction history, stored locally for privacy.
- Exit Modal: Secure exit with confirmation and blur effect.
- Mobile-friendly: Responsive design for desktop and mobile.
Tip
For local development, ensure Python 3.8+ and Node.js are installed.
# Create and activate Python virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Start Flask backend
python Backend/app.py- Open
index.htmlin your browser (or use Live Server for auto-reload).
├── index.html # Main web interface
├── style.css # Custom styles (overrides Tailwind)
├── script.js # Frontend logic
├── Backend/
│ ├── app.py # Flask backend server
│ └── model/
│ ├── Fraud_Detection.ipynb # Model training notebook
│ └── random_forest_model.joblib # ML model
├── resources/
│ ├── img/ # Logos and images
│ └── docs/ # Documentation
├── components/ # UI components
├── requirements.txt # Python dependencies
- Boot Sequence: On load, the UI simulates a terminal boot and checks backend health.
- Model Info: ML model details and metrics are fetched and displayed.
- Transaction Analysis: Enter transaction details, submit for analysis, and receive instant fraud prediction.
- Logs: All analyses are logged locally for review.
- Exit: Secure exit with confirmation modal.
- Frontend: HTML5, CSS3, Vanilla JavaScript, Tailwind CSS (CDN)
- Backend: Python 3.8+, Flask, Flask-CORS, scikit-learn, joblib
- ML Model: Random Forest, trained on 6M+ transactions
Important
No sensitive transaction data is stored on the server. All logs are kept in your browser's localStorage.
- Input validation and error handling throughout
- CORS enabled for local development
- No external dependencies in frontend
- ASCII art and UI can be modified in
index.htmlandstyle.css - Model retraining: Update
Fraud_Detection.ipynband export new.joblibmodel - Extend backend endpoints in
Backend/main.py
- See
resources/docs/andBackend/model/Fraud_Detection.ipynbfor model details and evaluation. - For API details, review
Backend/main.py.
For issues or questions, please open a GitHub issue or contact the project maintainer.
Note
This project is for educational and demonstration purposes. Not for production use without further security review.