Skip to content

OumaimaBoughdad/finalYearProject

Repository files navigation

🚀 AMWAL - FinTech Platform

🌐 Overview

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.

🔑 Key Features

  • 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. ☁️

🏗️ Project Structure

🖥️ Frontend

  • 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. 📞

⚙️ Backend

  • 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. 📨

🛠️ DevOps

  • 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. 🏗️

🤖 Predictive Model

  • 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. 📊

☁️ Cloud Deployment

  • AWS: Deployed on AWS for scalability and reliability. 🚀
  • Terraform: Manages cloud resources efficiently. 🏗️

🛠️ Technologies Used

  • Frontend: Angular 🅰️
  • Backend: Spring Boot, Kafka ☕
  • Security: JWT, OAuth2 🔐
  • DevOps: Docker, Kubernetes, Jenkins, Terraform 🐳
  • Machine Learning: scikit-learn 🤖
  • Monitoring: Grafana 📊
  • Cloud: AWS ☁️

🚀 Getting Started

Clone the Repository:

git clone https://github.com/OumaimaBoughdad/finalYearProject.git

Set Up Docker:

docker-compose up -d

Run the Application:

./mvnw spring-boot:run

Access the Application:

Open your browser and navigate to http://localhost:4200. 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published