{"id":24407342,"url":"https://github.com/fintech-lsi/user-service","last_synced_at":"2026-04-09T20:02:44.612Z","repository":{"id":273280968,"uuid":"898746419","full_name":"Fintech-LSI/User-service","owner":"Fintech-LSI","description":"A Spring Boot microservice for managing user accounts, authentication, and user-related operations in a fintech ecosystem.","archived":false,"fork":false,"pushed_at":"2025-01-20T00:19:16.000Z","size":2355,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-13T08:17:22.650Z","etag":null,"topics":["devops","docker","jenkins","maven","sonarqube","spring-boot","test"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Fintech-LSI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-05T00:34:22.000Z","updated_at":"2025-01-20T00:19:17.000Z","dependencies_parsed_at":"2025-01-20T00:27:25.583Z","dependency_job_id":"b8c48b49-4927-487e-a7c0-3c2ed6277bf9","html_url":"https://github.com/Fintech-LSI/User-service","commit_stats":null,"previous_names":["fintech-lsi/user-service"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fintech-LSI%2FUser-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fintech-LSI%2FUser-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fintech-LSI%2FUser-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fintech-LSI%2FUser-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Fintech-LSI","download_url":"https://codeload.github.com/Fintech-LSI/User-service/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243365637,"owners_count":20279215,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devops","docker","jenkins","maven","sonarqube","spring-boot","test"],"created_at":"2025-01-20T05:05:27.554Z","updated_at":"2025-10-16T17:48:01.313Z","avatar_url":"https://github.com/Fintech-LSI.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 👤 User Service\n\n[![Build Status](https://img.shields.io/jenkins/build?jobUrl=your-jenkins-url)](https://jenkins-url)\n[![Quality Gate Status](https://img.shields.io/sonar/quality_gate/user-service?server=http://54.86.47.1:9000)](http://54.86.47.1:9000)\n[![Docker Pulls](https://img.shields.io/docker/pulls/your-repo/user-service)](https://hub.docker.com/r/your-repo/user-service)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\u003c/div\u003e\n\n## 📋 Table of Contents\n- [Overview](#-overview)\n- [Features](#-features)\n- [Architecture](#-architecture)\n- [Tech Stack](#-tech-stack)\n- [Project Structure](#-project-structure)\n- [Pipeline](#-pipeline)\n- [Getting Started](#-getting-started)\n- [API Documentation](#-api-documentation)\n- [Configuration](#-configuration)\n- [Monitoring](#-monitoring)\n- [Deployment](#-deployment)\n- [Contributing](#-contributing)\n- [Team](#-team)\n- [License](#-license)\n\n## 🎯 Overview\n\nA comprehensive user management microservice built with Spring Boot that handles user accounts, profiles, and preferences within the FinTechPro ecosystem. This service provides centralized user data management with seamless integration with other platform services.\n\n## ✨ Features\n\n- 👤 **User Account Management**\n    - Registration\n    - Profile updates\n    - Account status\n- 📧 **Email Services**\n    - Verification\n    - Notifications\n    - Password reset\n- 🎯 **Favorite Currencies**\n    - Add/Remove favorites\n    - Preference tracking\n    - Real-time updates\n- 🖼️ **Image Handling**\n    - Profile pictures\n    - Document uploads\n    - Secure storage\n- 🔄 **Service Integration**\n    - Currency service connectivity\n    - Real-time data sync\n- 📊 **User Analytics**\n    - Activity tracking\n    - Usage patterns\n    - Preference analysis\n\n## 🏗 Architecture\n\nThe service follows a microservices architecture pattern:\n\n```\n                                  ┌─────────────┐\n                             ┌──▶│   Currency   │\n┌──────────────┐    REST    │    │   Service   │\n│    User      │◀──────────▶│    └─────────────┘\n│   Service    │            │    ┌─────────────┐\n└──────────────┘    AWS     └──▶│    S3 for    │\n                   Services      │   Images     │\n                                └─────────────┘\n```\n\n## 🛠 Tech Stack\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Spring_Boot-F2F4F9?style=for-the-badge\u0026logo=spring-boot\" alt=\"Spring Boot\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Java-ED8B00?style=for-the-badge\u0026logo=java\u0026logoColor=white\" alt=\"Java\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/PostgreSQL-316192?style=for-the-badge\u0026logo=postgresql\u0026logoColor=white\" alt=\"PostgreSQL\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Amazon_AWS-FF9900?style=for-the-badge\u0026logo=amazonaws\u0026logoColor=white\" alt=\"AWS\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Docker-2CA5E0?style=for-the-badge\u0026logo=docker\u0026logoColor=white\" alt=\"Docker\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/kubernetes-326ce5.svg?\u0026style=for-the-badge\u0026logo=kubernetes\u0026logoColor=white\" alt=\"Kubernetes\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Jenkins-D24939?style=for-the-badge\u0026logo=Jenkins\u0026logoColor=white\" alt=\"Jenkins\" /\u003e\n\u003c/div\u003e\n\n## 📂 Project Structure\n\n```\nsrc/main/java/com.fintech.user/\n├── 📊 config/               # Configuration files\n├── 🎮 controller/           # REST controllers\n├── 📦 dto/                 # Data Transfer Objects\n├── 🏢 entity/              # Domain entities\n├── 📚 repository/          # Data repositories\n│   ├── FavoriteCurrenciesRepository\n│   ├── ImageRepository\n│   └── UserRepository\n├── 🔧 service/             # Business logic\n│   ├── feign_clients/\n│   │   └── CurrencyFeignClientService\n│   ├── mapper/\n│   │   └── UserMapper\n│   ├── EmailService\n│   ├── FavoriteCurrencyService\n│   ├── ImageService\n│   └── UserService\n└── 🚀 UserApplication.java\n```\n\n## 🔄 Pipeline\n\nOur robust CI/CD pipeline ensures reliable deployments:\n\n![CI/CD Pipeline](/images/pipeline-diagram.png)\n\n\n1. 📥 **Code Checkout**\n    - Automated GitHub webhook triggers\n    - Clean workspace preparation\n\n2. 🔍 **SonarQube Analysis**\n    - Code quality verification\n    - Security vulnerability scanning\n    - Test coverage assessment\n    - Quality gate enforcement\n\n3. 🏗️ **Maven Build**\n    - Source compilation\n    - Unit test execution\n    - JAR packaging\n    - Dependency validation\n\n4. 🐳 **Docker Build \u0026 Push**\n    - No-cache image building\n    - AWS ECR authentication\n    - Image tagging and pushing\n\n5. ☸️ **EKS Deployment**\n    - Kubernetes manifest application\n    - Deployment verification\n    - Health check monitoring\n\n## 🚀 Getting Started\n\n```bash\n# Clone the repository\ngit clone https://github.com/your-org/user-service.git\n\n# Navigate to project directory\ncd user-service\n\n# Install dependencies and build\nmvn clean install\n\n# Run locally\nmvn spring-boot:run -Dspring.profiles.active=local\n\n# Run tests\nmvn test\n\n# Build Docker image\ndocker build -t user-service .\n```\n\n\n\n## 📊 Monitoring\n\nIntegrated monitoring includes:\n- 📈 Application metrics via Prometheus\n- 🔍 Performance tracking through Grafana\n- ⚡ Resource utilization monitoring\n- 🚨 Error tracking and alerting\n- 📝 Automated logging\n\n## 👥 Team\n\n| Avatar                                                                                                  | Name | Role | GitHub |\n|---------------------------------------------------------------------------------------------------------|------|------|--------|\n| \u003cimg src=\"https://github.com/zachary013.png\" width=\"50\" height=\"50\" style=\"border-radius: 50%\"/\u003e        | Zakariae Azarkan | DevOps Engineer | [@zachary013](https://github.com/zachary013) |\n| \u003cimg src=\"https://github.com/goalaphx.png\" width=\"50\" height=\"50\" style=\"border-radius: 50%\"/\u003e          | El Mahdi Id Lahcen | Frontend Developer | [@goalaphx](https://github.com/goalaphx) |\n| \u003cimg src=\"https://github.com/hodaifa-ech.png\" width=\"50\" height=\"50\" style=\"border-radius: 50%\"/\u003e       | Hodaifa | Cloud Architect | [@hodaifa-ech](https://github.com/hodaifa-ech) |\n| \u003cimg src=\"https://github.com/khalilh2002.png\" width=\"50\" height=\"50\" style=\"border-radius: 50%\"/\u003e       | Khalil El Houssine | Backend Developer | [@khalilh2002](https://github.com/khalilh2002) |\n| \u003cimg src=\"https://github.com/Medamine-Bahassou.png\" width=\"50\" height=\"50\" style=\"border-radius: 50%\"/\u003e | Mohamed Amine BAHASSOU | ML Engineer | [@Medamine-Bahassou](https://github.com/Medamine-Bahassou) |\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003eBuilt with ❤️ by the FinTech Team\u003c/p\u003e\n\u003c/div\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffintech-lsi%2Fuser-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffintech-lsi%2Fuser-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffintech-lsi%2Fuser-service/lists"}