Bidly is a microservice-based auction marketplace project. It is built as a DevOps/GitOps practice project using separate backend, frontend, and Kubernetes deployment repositories.
bidly-backend/
├── bidly-backend-aunction/
└── bidly-backend-auth/
bidly-frontend/
├── bidly-frontend-aunction/
└── bidly-frontend-auth/
bidly-argo-cd/
bidly-backend-auth: Auth API service for users, login, profile, and password flows.bidly-backend-aunction: Auction API service for listings, bids, uploads, and marketplace data.bidly-frontend-auth: Frontend auth app.bidly-frontend-aunction: Frontend auction marketplace app.bidly-argo-cd: Kubernetes manifests used by Argo CD.
- Frontend: React/Vite
- Backend: Go microservices
- Database: MySQL / AWS RDS
- Object storage: AWS S3
- Container registry: Docker Hub
- CI/CD: GitHub Actions
- Kubernetes: AWS EKS
- GitOps: Argo CD
- Traffic management practice: Istio, Kiali, DestinationRule, and VirtualService
- External access: AWS Load Balancer Controller with ALB Ingress
- Code is pushed to a service repository.
- GitHub Actions builds and pushes the Docker image.
- The workflow updates the Kubernetes image/version in
bidly-argo-cd. - Argo CD syncs the Kubernetes manifests to EKS.
- ALB exposes the application.
- Istio can be used for traffic splitting and canary practice.
git submodule update --init --recursive
git submodule update --remote --recursive