Production-ready, end-to-end MLOps pipeline for multi-domain machine learning on GCP/GKE.
Data Sources → DVC → Great Expectations → Feast → Kubeflow Pipelines
↓
Katib (HP tuning) → MLflow (tracking)
↓
Model Registry → KServe
↓
Prometheus/Grafana ← Istio (A/B)
↓
Evidently (drift) → Auto-retrain
- Docker
- kind
- kubectl
- Helm
- Python 3.11+
- Node.js 20+
- uv (Python package manager)
# Start the full local environment
make local-up
# Run all tests
make test
# Run full E2E pipeline test
make local-test
# Tear down
make local-down├── src/hades/ # Core ML Python package
├── pipelines/ # Kubeflow Pipeline definitions
├── dashboard/ # Next.js TypeScript dashboard
├── infrastructure/ # Terraform, Helm, Kustomize
├── tests/ # Unit, integration, model validation
├── local/ # Local dev environment (kind)
├── configs/ # Runtime configs per ML domain
├── feature_store/ # Feast feature definitions
└── data/ # DVC-tracked data
| Component | Tool | License |
|---|---|---|
| Orchestration | Kubeflow Pipelines | Apache 2.0 |
| Data Versioning | DVC | Apache 2.0 |
| Feature Store | Feast | Apache 2.0 |
| Data Validation | Great Expectations | Apache 2.0 |
| Experiment Tracking | MLflow | Apache 2.0 |
| HP Tuning | Katib | Apache 2.0 |
| Model Serving | KServe | Apache 2.0 |
| Monitoring (model) | Evidently AI | Apache 2.0 |
| Monitoring (infra) | Prometheus + Grafana | Apache 2.0 |
| CI/CD | GitHub Actions + ArgoCD | Apache 2.0 |
| IaC | Terraform | BSL 1.1 |
| Dashboard | Next.js | MIT |
See LICENSE for details.