Kedro is a Python framework for building production-ready data engineering and data science pipelines that emphasize reproducibility, maintainability, and modularity through software engineering best practices.
Kedro addresses the challenge of creating reliable, maintainable data pipelines by providing a structured approach grounded in software engineering principles. It works through a project template based on established conventions, a data catalog system that abstracts data loading and saving across multiple formats and storage backends, and a pipeline abstraction layer that automatically resolves dependencies between pure Python functions. The framework includes built-in support for visualization, testing with pytest, documentation generation, and code linting standards.
Teams building data science or machine learning projects should consider Kedro if they prioritize code quality, reproducibility, and long-term maintainability over rapid prototyping. It suits organizations moving beyond notebooks toward production systems, particularly those needing to deploy pipelines across different environments. The framework supports flexible deployment strategies including single-machine, distributed, and cloud-native options through integrations with platforms like Argo, Prefect, Kubeflow, AWS Batch, and Databricks. The data catalog's support for versioning and multiple file systems makes it valuable for teams managing complex data workflows.
The project maintains active development with regular contributions across core functionality and integrations. The codebase emphasizes testing standards and documentation quality as ongoing priorities. The framework continues to evolve its deployment capabilities and ecosystem integrations to support diverse production environments.