A modern, scalable solution that combines inventory management with marketplace functionality, built using cloud-native technologies and microservices architecture.
- Microservices-based architecture
- Real-time inventory management
- Integrated marketplace platform
- Administrative dashboard
- Scalable cloud deployment
- Caching system for improved performance
- Media management with Cloudinary
- API Gateway for unified access
.NET Aspire - Cloud-native application framework ASP.NET Core - Web API development RabbitMQ - Message broker for service communication Ocelot - API Gateway
React 18 - For both Marketplace and Dashboard UIs
SQL Server - For Users and Stock services PostgreSQL - For Marketplace service Redis - For caching
Docker - Containerization Kubernetes - Container orchestration DigitalOcean - Cloud infrastructure GitHub - Version control and CI/CD
Cloudinary - Media management and optimization
The system is composed of several microservices:
-
Users Service : Handles user management and authentication
-
Marketplace Service : Manages marketplace listings and transactions
-
Stock Service : Controls inventory and stock management
-
Gateway : Routes and manages API requests using Ocelot
Each service maintains its own database:
- Users Service → SQL Server
- Marketplace Service → PostgreSQL
- Stock Service → SQL Server
- Redis for caching frequently accessed data
- .NET 8.0 SDK
- Docker Desktop
- Node.js and npm
- Kubernetes cluster access
- Redis
- SQL Server
- PostgreSQL
- 21 OpenJDK
Clone the repository
git clone https://github.com/oussamahdidou/microservices.git
cd client/marketplace/web
npm install
cd client/adminpanel/free-react-tailwind-admin-dashboard
npm install
The application requires several environment variables to be set:
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secret
- Navigate to the aspire project
cd backend/infrastructure/Aspire.AppHost
- Restore project dependencies
dotnet restore
- Run All The project
dotnet run
- Oussama Hdidou
- Noura Aoujil