Production-oriented marketplace platform with microservices, event streaming, and Kubernetes-first operations.
- Demonstrates a realistic commerce microservice architecture
- Combines transactional workloads, eventing, search, and object storage
- Uses Infrastructure as Code for cloud, Kubernetes, and GitHub governance
- Includes SRE-focused observability and operational playbooks
- Request plane:
Web -> API Gateway -> Domain services - Data plane:
Postgres + Redis + OpenSearch - Event plane:
Postgres CDC -> Debezium -> Kafka -> Kafka Connect -> MinIO - Deployment plane:
GitHub Actions -> Kustomize overlays -> OKE
Architecture visual:
docs/assets/global-marketplace-architecture.gif
Prerequisites:
- Docker
- kubectl and kustomize
- Terraform (for infra and governance flows)
Local development:
make devQuality checks:
make lint
make format-checkKubernetes overlays:
- Dev:
platform/k8s/overlays/dev - Prod:
platform/k8s/overlays/prod - Preview:
platform/k8s/overlays/preview
OCI and Terraform lifecycle:
make infra-planmake infra-applymake infra-destroymake infra-status
GitHub governance as Terraform:
make gh-iac-initmake gh-iac-planmake gh-iac-apply
ci.yml: core service testsci-extended.yml: lint, tests, image/security taskspreview-pr.yml: preview namespaces onpreviewlabeldeploy-dev.ymlanddeploy-prod.yml: environment deploymentspublish-ghcr-package.yml: manual andv*tag-based package publishing
Local SLO burn-rate gate commands:
export PROMETHEUS_URL=https://prometheus.example.com
make slo-gate-check
make slo-gate-check-prodFull command reference:
docs/tools/SLO_GATE_LOCAL_CLI_README.md
GitHub Packages uses GHCR container packages.
- Manual publish: run
Publish GHCR Packageworkflow - Auto publish: push tag like
v0.1.0 - Packages page:
https://github.com/karimFin/gpm-microservices/packages
- Start here:
docs/README.md - Tools map:
docs/tools/TOOLS_MAP.md - Architecture deep dive:
docs/ARCHITECTURE_DEEP_DIVE.md - IaC adoption plan:
docs/IAC_ADOPTION_PLAN.md - Secrets governance:
docs/GITHUB_SECRETS_GOVERNANCE.md
- Contributing:
CONTRIBUTING.md - Code of Conduct:
CODE_OF_CONDUCT.md - Security Policy:
SECURITY.md - Support:
SUPPORT.md - Team and credits:
docs/TEAM_AND_CREDITS.md
- OpenSearch indexing pipelines
- SLO dashboards and alerting hardening
- Policy enforcement with OPA/Gatekeeper