AMWAL is an innovative FinTech platform designed to provide secure and efficient financial services. The platform leverages a microservices architecture built with Spring Boot, deployed on AWS, and integrates modern DevOps practices. It offers features such as transaction management, customer account handling, credit risk assessment, and predictive financial trend analysis. The platform utilizes scikit-learn for machine learning, Docker and Kubernetes for containerization, and Grafana for real-time monitoring and visualization.
- Microservices Architecture: Ensures scalability and maintainability. 🏗️
- Frontend Development: SPA built with Angular for an intuitive user experience. 💻
- Security: Implements JWT for secure authentication and authorization. 🔒
- Backend Services: Uses Spring Boot with each microservice having its own database. 🛠️
- Communication: Kafka for asynchronous microservices communication. 📡
- DevOps Integration: Includes Docker, Jenkins for CI/CD, and Terraform for infrastructure as code. 🔄
- Predictive Analytics: Uses scikit-learn for financial data analysis and risk assessment. 📈
- Cloud Deployment: Deployed on AWS with Eureka for service registration and an API Gateway. ☁️
- Angular SPA: Provides a responsive and user-friendly interface. 🌟
- Security: JWT-based authentication for secure API access. 🔐
- Microservices Communication: REST API calls centralized via an API Gateway. 📞
- Microservices Architecture: Divided into six key services:
- Security Microservice: Handles authentication and authorization with OAuth2 and JWT. 🛡️
- Transaction Management: Manages financial transactions. 💳
- Account Management: Handles customer accounts. 👤
- Risk Assessment: Evaluates credit risks. 📉
- Data Analysis: Analyzes financial data. 📊
- Predictive Modeling: Predicts financial trends and assesses risks. 🔮
- Kafka Integration: Ensures real-time microservices communication. 📨
- Service Registration: Microservices registered with Eureka Registry. 📝
- API Gateway: Unified access to microservices. 🚪
- CI/CD Pipeline: Uses Jenkins for continuous integration and deployment. 🤖
- GitHub Repository: Managed with protected branches. 🌿
- Docker: Containerizes all microservices. 🐳
- Infrastructure as Code: Uses Terraform for cloud resource management. 🏗️
- Data Exploration & Preprocessing: Analyzes data, handles missing values, and treats outliers. 🔍
- Feature Engineering: Label Encoding for categorical features and MinMax Scaler for numerical features. 🛠️
- Model Development: Trains and evaluates multiple models (Random Forest, Naïve Bayes, Decision Trees).
- Random Forest: Top-performing model. 🌲
- Cross-Validation & Hyperparameter Tuning: Optimizes model accuracy and robustness. 🎯
- Visualization & Monitoring: Uses Grafana for real-time monitoring. 📊
- AWS: Deployed on AWS for scalability and reliability. 🚀
- Terraform: Manages cloud resources efficiently. 🏗️
- Frontend: Angular
🅰️ - Backend: Spring Boot, Kafka ☕
- Security: JWT, OAuth2 🔐
- DevOps: Docker, Kubernetes, Jenkins, Terraform 🐳
- Machine Learning: scikit-learn 🤖
- Monitoring: Grafana 📊
- Cloud: AWS ☁️
git clone https://github.com/OumaimaBoughdad/finalYearProject.git
docker-compose up -d
./mvnw spring-boot:run
Open your browser and navigate to http://localhost:4200
. 🚀