fmind/cookiecutter-mlops-package

Start building and deploying Python packages and Docker images for MLOps tasks.

What it solves

This project provides a standardized, production-ready foundation for MLOps projects. It eliminates the repetitive setup of building, testing, packaging, and deploying Python packages and Docker images, allowing developers to jumpstart their AI/ML codebases with a consistent structure and a pre-configured toolchain.

How it works

It is a Cookiecutter template that generates a complete project structure. The generated projects use a modern Python stack including uv for dependency management, Ruff for linting, and mise to unify task execution (install, test, build). It includes built-in support for MLflow for tracking and model registries using a SQLite backend, and provides multi-stage Docker images and GitHub Actions workflows for CI/CD (including automated documentation deployment to GitHub Pages).

Who it’s for

ML engineers and data scientists who need to build reusable AI/ML components that can be integrated into various MLOps platforms like Kubernetes, Vertex AI, Databricks, Azure ML, or AWS SageMaker.

Highlights

  • Unified Task Vocabulary: Uses mise to ensure the same commands are used across local development, Git hooks, and CI.
  • Fast Python Stack: Leverages uv and Ruff for high-performance dependency and code quality management.
  • Integrated Security: Built-in scanning for dependency CVEs (pip-audit), secrets (gitleaks), and container images (Trivy).
  • Ready-to-use CI/CD: Includes GitHub Actions for automated testing, releases, and security rescans.
  • MLflow Integration: Pre-configured for tracking and model registry using a local SQLite store.

Related

  • Project
  • Project
  • Project
  • Project
  • Project