A high-performance fraud detection system built with a microservices architecture, AWS integration, and real-time AI-powered scoring.
Live Demo: https://d49m8z8w0jzwy.cloudfront.net
| Service Name | Tech Stack | Port | Purpose |
|---|---|---|---|
| Auth Service | Node, Express, MongoDB | 3001 | User registration, login, JWT auth |
| Transaction Service | Node, Express, MongoDB | 3002 | CRUD for transactions, pushes to SQS |
| AI Scoring Service | Node, Gemini API | 3003 | Async worker, scores transactions via AI |
| Notification Service | Node, Express, MongoDB | 3004 | Audit logs and real-time notifications |
- Amazon ECS (Fargate): Container orchestration for the 4 microservices
- Amazon SQS: Message queuing for asynchronous communication between services
- Application Load Balancer (ALB): Routes traffic to appropriate ECS tasks
- Amazon ECR: Private container registry for Docker images
- Amazon S3 & CloudFront: Hosting and CDN for the React frontend
- AWS Secrets Manager: Secure storage of environment variables
| Category | Technologies |
|---|---|
| Frontend | React.js, Tailwind CSS, Redux Toolkit, Recharts |
| Backend | Node.js, Express.js |
| Database | MongoDB Atlas |
| Cloud | AWS (ECS, SQS, S3, CloudFront, ALB), Docker |
| AI | Google Gemini API |
| CI/CD | GitHub Actions |
-
Clone the repository
git clone https://github.com/yourusername/FraudGuard.git cd FraudGuard -
Set up Environment Variables Create a
.envfile in each service directory (auth-service,transaction-service,ai-scoring-service,notification-service) with the required keys (see below). -
Run with Docker Compose
docker-compose up --build
-
Access the application
- Frontend:
http://localhost:5173 - APIs:
http://localhost:3001to3004
- Frontend:
Auth Service: PORT, MONGO_URI, JWT_SECRET
Transaction Service: PORT, MONGO_URI, SQS_QUEUE_URL, RAZORPAY_KEY_ID, RAZORPAY_KEY_SECRET
AI Scoring Service: PORT, MONGO_URI, SQS_QUEUE_URL, GEMINI_API_KEY
Notification Service: PORT, MONGO_URI, SQS_QUEUE_URL
The project uses GitHub Actions for automated deployments:
- Backend Services: Any push modifying the
services/folder triggers a build and push to AWS ECR, followed by an ECS task update. - Frontend: Pushes to the
client/folder trigger an optimized build, syncs with the S3 bucket, and invalidates the CloudFront cache.
- Add WebSocket support for real-time dashboard updates
- Implement a caching layer with Redis to optimize frequent queries
- Add multi-factor authentication (MFA) for analyst accounts
- Introduce an automated retry mechanism for failed AI scoring attempts


