# Kedro is an open-source Python framework for creating reproducible, maintainable, and modular data science code. It applies software engineering concepts to machine learning code including modularity, separation of concerns, and versioning. Key features: - Project templates for creating standardized project structures - Data Catalog for managing and versioning datasets - Pipeline abstraction for creating modular, reusable nodes - Configuration management for parameters and credentials - Extensive deployment options (Airflow, Databricks, Kubeflow, etc.) For comprehensive kedro-dataset documentation, see: https://docs.kedro.org/projects/kedro-datasets/en/stable/llms.txt For pipeline visualisation documentation, see: https://docs.kedro.org/projects/kedro-viz/en/stable/llms.txt Current version: 1.0.0 Last updated: 22/07/2025 ## Get Started - [Welcome](https://docs.kedro.org/en/stable/index.md): Welcome to Kedro documentation - [Installation](https://docs.kedro.org/en/stable/getting-started/install/index.md): Installation guide for pip, conda, and development setup - [Kedro concepts](https://docs.kedro.org/en/stable/getting-started/kedro_concepts/index.md): Core concepts - nodes, pipelines, catalog, and more - [Cheatsheet](https://docs.kedro.org/en/stable/getting-started/cheatsheet/index.md): Two-page Kedro cheatsheet, available as a SVG file - [FAQs](https://docs.kedro.org/en/stable/getting-started/faq/index.md): Frequently asked questions - [Video course](https://docs.kedro.org/en/stable/getting-started/course/index.md): Learn about Kedro from our video course - [Build a pipeline visually](https://docs.kedro.org/en/stable/getting-started/pipeline_builder/index.md): Design Kedro pipelines visually in the browser and export a project ## Essential Tutorials - [Spaceflight tutorial](https://docs.kedro.org/en/stable/tutorials/spaceflights_tutorial/index.md): Complete tutorial building a spaceflight price prediction project - [Spaceflight tutorial template](https://docs.kedro.org/en/stable/tutorials/tutorial_template/index.md): Tutorial project template guide - [Set up data](https://docs.kedro.org/en/stable/tutorials/set_up_data/index.md): Setting up data for the tutorial - [Create a pipeline](https://docs.kedro.org/en/stable/tutorials/create_a_pipeline/index.md): Step-by-step guide to creating pipelines - [Add another pipeline](https://docs.kedro.org/en/stable/tutorials/add_another_pipeline/index.md): Adding multiple pipelines to a project - [Settings](https://docs.kedro.org/en/stable/tutorials/settings/index.md): Configuring project settings - [Test a project](https://docs.kedro.org/en/stable/tutorials/test_a_project/index.md): Testing your Kedro project - [Notebook tutorial](https://docs.kedro.org/en/stable/tutorials/notebooks_tutorial/index.md): Using Kedro with Jupyter notebooks - [FAQs](https://docs.kedro.org/en/stable/tutorials/spaceflights_tutorial_faqs/index.md): Tutorial FAQs ## Creating Projects - [Create a Kedro project](https://docs.kedro.org/en/stable/create/new_project/index.md): How to create a new Kedro project - [Create a minimal Kedro project](https://docs.kedro.org/en/stable/create/minimal_kedro_project/index.md): Creating minimal projects without boilerplate - [Customise a new project](https://docs.kedro.org/en/stable/create/customise_project/index.md): Customizing project templates - [Project tools](https://docs.kedro.org/en/stable/create/new_project_tools/index.md): Tools included in new projects - [Kedro starters](https://docs.kedro.org/en/stable/create/starters/index.md): Using and creating Kedro starters (project templates) ## Configuration - [Configuration](https://docs.kedro.org/en/stable/configure/configuration_basics/index.md): Configuration management fundamentals - [Parameters and credentials](https://docs.kedro.org/en/stable/configure/parameters_and_credentials/index.md): Understanding pipeline parameters and credentials - [Templating](https://docs.kedro.org/en/stable/configure/templating/index.md): Understanding templating with OmegaConfigLoader - [Configuration](https://docs.kedro.org/en/stable/configure/how_to_configure_project/index.md): How to configure your Kedro project - [Parameters and credentials](https://docs.kedro.org/en/stable/configure/how_to_use_parameters_and_credentials/index.md): How to work with parameters and credentials - [Templating](https://docs.kedro.org/en/stable/configure/how_to_use_templating/index.md): How to work with templating - [Config loader migration](https://docs.kedro.org/en/stable/configure/config_loader_migration/index.md): Migrating between config loaders ## Data Management - [Introduction](https://docs.kedro.org/en/stable/catalog-data/introduction/index.md): Introduction to the Data Catalog - [Data Catalog](https://docs.kedro.org/en/stable/catalog-data/data_catalog/index.md): Data Catalog concepts and structure - [Dataset factories](https://docs.kedro.org/en/stable/catalog-data/kedro_dataset_factories/index.md): How dataset factories generalise catalog entries - [Partitioned and incremental datasets](https://docs.kedro.org/en/stable/catalog-data/partitioned_and_incremental_datasets/index.md): Partitioned and incremental dataset concepts - [Lazy loading](https://docs.kedro.org/en/stable/catalog-data/lazy_loading/index.md): Lazy loading for performance optimization - [Validate datasets](https://docs.kedro.org/en/stable/catalog-data/dataset_validation/index.md): How to validate datasets with declared validators - [Configure the Data Catalog](https://docs.kedro.org/en/stable/catalog-data/how_to_configure_the_data_catalog/index.md): How to configure load/save arguments, credentials, versioning, and environments - [Use dataset factories](https://docs.kedro.org/en/stable/catalog-data/how_to_use_dataset_factories/index.md): How to apply dataset factory patterns - [Use partitioned and incremental datasets](https://docs.kedro.org/en/stable/catalog-data/how_to_use_partitioned_and_incremental_datasets/index.md): How to configure and use partitioned and incremental datasets - [Access the Data Catalog in code](https://docs.kedro.org/en/stable/catalog-data/how_to_access_the_data_catalog_in_code/index.md): How to use the DataCatalog programmatically - [Data Catalog YAML examples](https://docs.kedro.org/en/stable/catalog-data/data_catalog_yaml_examples/index.md): YAML configuration examples ## Nodes and Pipelines - [Nodes](https://docs.kedro.org/en/stable/build/nodes/index.md): Creating and using nodes - the building blocks of pipelines - [Pipeline object](https://docs.kedro.org/en/stable/build/pipeline_introduction/index.md): Understanding the pipeline object - [Run a pipeline](https://docs.kedro.org/en/stable/build/run_a_pipeline/index.md): Running pipelines with different options - [Modular pipelines](https://docs.kedro.org/en/stable/build/modular_pipelines/index.md): Creating reusable, modular pipelines - [Namespaces](https://docs.kedro.org/en/stable/build/namespaces/index.md): Reusing pipelines with namespaces - [Pipeline registry](https://docs.kedro.org/en/stable/build/pipeline_registry/index.md): Registering and discovering pipelines - [Slice a pipeline](https://docs.kedro.org/en/stable/build/slice_a_pipeline/index.md): Slicing pipelines for partial execution - [LLM context node](https://docs.kedro.org/en/stable/build/llm_context_node/index.md): Using LLM Context Nodes to construct LLMContext ## Development Practices - [Dependency management](https://docs.kedro.org/en/stable/develop/dependencies/index.md): Managing project dependencies - [Logging](https://docs.kedro.org/en/stable/develop/logging/index.md): Logging configuration and best practices - [Automated testing](https://docs.kedro.org/en/stable/develop/automated_testing/index.md): Writing tests for Kedro projects - [Formatting and linting](https://docs.kedro.org/en/stable/develop/linting/index.md): Code formatting and linting setup - [Debugging](https://docs.kedro.org/en/stable/develop/debugging/index.md): Debugging Kedro pipelines - [Vibe coding with MCP](https://docs.kedro.org/en/stable/develop/vibe_coding_with_mcp/index.md): Vibe coding with MCP - [Vibe coding with skills](https://docs.kedro.org/en/stable/develop/vibe_coding_with_skills/index.md): Vibe coding with skills ## Deployment - [Overview](https://docs.kedro.org/en/stable/deploy/index.md): Deployment overview and strategies - [How to package your project](https://docs.kedro.org/en/stable/deploy/package_a_project/index.md): Packaging Kedro projects for deployment - [How to group your nodes effectively](https://docs.kedro.org/en/stable/deploy/nodes_grouping/index.md): Grouping nodes effectively for deployment - [Single-machine deployment](https://docs.kedro.org/en/stable/deploy/single_machine/index.md): Single-machine deployment guide - [Distributed deployment](https://docs.kedro.org/en/stable/deploy/distributed/index.md): Distributed deployment strategies - [Apache Airflow](https://docs.kedro.org/en/stable/deploy/supported-platforms/airflow/index.md): Apache Airflow integration - [Amazon SageMaker](https://docs.kedro.org/en/stable/deploy/supported-platforms/amazon_sagemaker/index.md): Amazon SageMaker deployment - [Amazon EMR Serverless](https://docs.kedro.org/en/stable/deploy/supported-platforms/amazon_emr_serverless/index.md): Amazon EMR Serverless guide - [AWS Step Functions](https://docs.kedro.org/en/stable/deploy/supported-platforms/aws_step_functions/index.md): AWS Step Functions integration - [Azure ML pipelines](https://docs.kedro.org/en/stable/deploy/supported-platforms/azure/index.md): Azure ML pipelines deployment - [Dagster](https://docs.kedro.org/en/stable/deploy/supported-platforms/dagster/index.md): Dagster deployment - [Dask](https://docs.kedro.org/en/stable/deploy/supported-platforms/dask/index.md): Dask integration for parallel computing - [Databricks](https://docs.kedro.org/en/stable/deploy/supported-platforms/databricks/index.md): Databricks deployment - [Kubeflow Pipelines](https://docs.kedro.org/en/stable/deploy/supported-platforms/kubeflow/index.md): Kubeflow Pipelines integration - [Prefect](https://docs.kedro.org/en/stable/deploy/supported-platforms/prefect/index.md): Prefect workflow orchestration - [VertexAI](https://docs.kedro.org/en/stable/deploy/supported-platforms/vertexai/index.md): Google VertexAI deployment - [Argo Workflows](https://docs.kedro.org/en/stable/deploy/supported-platforms/argo/index.md): Argo Workflows integration - [AWS Batch](https://docs.kedro.org/en/stable/deploy/supported-platforms/aws_batch/index.md): AWS Batch deployment ## Extending Kedro - [Use cases](https://docs.kedro.org/en/stable/extend/common_use_cases/index.md): Common extension patterns - [Custom datasets](https://docs.kedro.org/en/stable/extend/how_to_create_a_custom_dataset/index.md): Creating custom dataset implementations - [Introduction](https://docs.kedro.org/en/stable/extend/hooks/introduction/index.md): Introduction to Kedro hooks - [Common use cases](https://docs.kedro.org/en/stable/extend/hooks/common_use_cases/index.md): Common hook use cases - [Examples](https://docs.kedro.org/en/stable/extend/hooks/examples/index.md): Hook implementation examples - [Kedro sessions](https://docs.kedro.org/en/stable/extend/session/index.md): Programmatic usage with KedroSession - [Serving over HTTP](https://docs.kedro.org/en/stable/extend/serving/index.md): Serving pipelines over HTTP - [Custom plugins](https://docs.kedro.org/en/stable/extend/plugins/index.md): Creating Kedro plugins - [Custom starters](https://docs.kedro.org/en/stable/extend/create_a_starter/index.md): Creating custom project starters ## API Reference - [Overview](https://docs.kedro.org/en/stable/api/index.md): API documentation overview - [Overview](https://docs.kedro.org/en/stable/api/config/kedro.config/index.md): Configuration API overview - [AbstractConfigLoader](https://docs.kedro.org/en/stable/api/config/kedro.config.AbstractConfigLoader/index.md): AbstractConfigLoader reference - [OmegaConfigLoader](https://docs.kedro.org/en/stable/api/config/kedro.config.OmegaConfigLoader/index.md): OmegaConfigLoader reference - [MissingConfigException](https://docs.kedro.org/en/stable/api/config/kedro.config.MissingConfigException/index.md): MissingConfigException - [Overview](https://docs.kedro.org/en/stable/api/framework/kedro.framework/index.md): Framework API overview - [CLI](https://docs.kedro.org/en/stable/api/framework/kedro.framework.cli/index.md): CLI API reference - [Context](https://docs.kedro.org/en/stable/api/framework/kedro.framework.context/index.md): Context API - [Hooks](https://docs.kedro.org/en/stable/api/framework/kedro.framework.hooks/index.md): Hooks API - [Project](https://docs.kedro.org/en/stable/api/framework/kedro.framework.project/index.md): Project API - [Session](https://docs.kedro.org/en/stable/api/framework/kedro.framework.session/index.md): Session API - [Startup](https://docs.kedro.org/en/stable/api/framework/kedro.framework.startup/index.md): Startup API - [Overview](https://docs.kedro.org/en/stable/api/io/kedro.io/index.md): I/O API overview - [DataCatalog](https://docs.kedro.org/en/stable/api/io/kedro.io.DataCatalog/index.md): DataCatalog API reference - [CatalogProtocol](https://docs.kedro.org/en/stable/api/io/kedro.io.CatalogProtocol/index.md): CatalogProtocol interface - [SharedMemoryDataCatalog](https://docs.kedro.org/en/stable/api/io/kedro.io.SharedMemoryDataCatalog/index.md): SharedMemoryDataCatalog for parallel processing - [SharedMemoryCatalogProtocol](https://docs.kedro.org/en/stable/api/io/kedro.io.SharedMemoryCatalogProtocol/index.md): SharedMemoryCatalogProtocol interface - [CatalogConfigResolver](https://docs.kedro.org/en/stable/api/io/kedro.io.CatalogConfigResolver/index.md): CatalogConfigResolver reference - [AbstractDataset](https://docs.kedro.org/en/stable/api/io/kedro.io.AbstractDataset/index.md): AbstractDataset base class - [AbstractVersionedDataset](https://docs.kedro.org/en/stable/api/io/kedro.io.AbstractVersionedDataset/index.md): AbstractVersionedDataset for versioning - [CachedDataset](https://docs.kedro.org/en/stable/api/io/kedro.io.CachedDataset/index.md): CachedDataset for performance - [MemoryDataset](https://docs.kedro.org/en/stable/api/io/kedro.io.MemoryDataset/index.md): MemoryDataset reference - [Version](https://docs.kedro.org/en/stable/api/io/kedro.io.Version/index.md): Version class reference - [DatasetAlreadyExistsError](https://docs.kedro.org/en/stable/api/io/kedro.io.DatasetAlreadyExistsError/index.md): DatasetAlreadyExistsError exception - [DatasetError](https://docs.kedro.org/en/stable/api/io/kedro.io.DatasetError/index.md): DatasetError base exception - [DatasetNotFoundError](https://docs.kedro.org/en/stable/api/io/kedro.io.DatasetNotFoundError/index.md): DatasetNotFoundError exception - [Overview](https://docs.kedro.org/en/stable/api/ipython/kedro.ipython/index.md): IPython extension API overview - [load_ipython_extension](https://docs.kedro.org/en/stable/api/ipython/kedro.ipython.load_ipython_extension/index.md): Loading IPython extension - [magic_load_node](https://docs.kedro.org/en/stable/api/ipython/kedro.ipython.magic_load_node/index.md): Magic command for loading nodes - [magic_reload_kedro](https://docs.kedro.org/en/stable/api/ipython/kedro.ipython.magic_reload_kedro/index.md): Magic command for reloading Kedro - [reload_kedro](https://docs.kedro.org/en/stable/api/ipython/kedro.ipython.reload_kedro/index.md): Reload Kedro function - [kedro.logging](https://docs.kedro.org/en/stable/api/kedro.logging/index.md): Logging utilities and configuration - [Overview](https://docs.kedro.org/en/stable/api/pipeline/kedro.pipeline/index.md): Pipeline API overview - [Node](https://docs.kedro.org/en/stable/api/pipeline/kedro.pipeline.node/index.md): Node API reference - [Pipeline](https://docs.kedro.org/en/stable/api/pipeline/kedro.pipeline.Pipeline/index.md): Pipeline class reference - [Overview](https://docs.kedro.org/en/stable/api/runner/kedro.runner/index.md): Runner API overview - [AbstractRunner](https://docs.kedro.org/en/stable/api/runner/kedro.runner.AbstractRunner/index.md): AbstractRunner base class - [SequentialRunner](https://docs.kedro.org/en/stable/api/runner/kedro.runner.SequentialRunner/index.md): SequentialRunner reference - [ParallelRunner](https://docs.kedro.org/en/stable/api/runner/kedro.runner.ParallelRunner/index.md): ParallelRunner reference - [ThreadRunner](https://docs.kedro.org/en/stable/api/runner/kedro.runner.ThreadRunner/index.md): ThreadRunner reference - [Overview](https://docs.kedro.org/en/stable/api/server/kedro.server/index.md): Server API overview - [Models](https://docs.kedro.org/en/stable/api/server/kedro.server.models/index.md): Server request and response models - [kedro.utils](https://docs.kedro.org/en/stable/api/kedro.utils/index.md): Utility functions and helpers - [kedro.load_ipython_extension](https://docs.kedro.org/en/stable/api/kedro.load_ipython_extension/index.md): IPython extension loader - [kedro.KedroDeprecationWarning](https://docs.kedro.org/en/stable/api/kedro.KedroDeprecationWarning/index.md): Deprecation warning class - [kedro.KedroPythonVersionWarning](https://docs.kedro.org/en/stable/api/kedro.KedroPythonVersionWarning/index.md): Python version warning class ## Integrations and Tools - [Introduction](https://docs.kedro.org/en/stable/integrations-and-plugins/notebooks_and_ipython/index.md): Jupyter integration overview - [Kedro and Jupyter notebooks](https://docs.kedro.org/en/stable/integrations-and-plugins/notebooks_and_ipython/kedro_and_notebooks/index.md): Using Kedro with notebooks - [How to add Kedro to Jupyter Notebook](https://docs.kedro.org/en/stable/integrations-and-plugins/notebooks_and_ipython/notebook-example/add_kedro_to_a_notebook/index.md): Adding Kedro to notebooks - [PySpark](https://docs.kedro.org/en/stable/integrations-and-plugins/pyspark_integration/index.md): PySpark integration guide - [MLflow](https://docs.kedro.org/en/stable/integrations-and-plugins/mlflow/index.md): MLflow experiment tracking - [DVC](https://docs.kedro.org/en/stable/integrations-and-plugins/dvc/index.md): DVC data versioning integration - [Delta Lake](https://docs.kedro.org/en/stable/integrations-and-plugins/deltalake_versioning/index.md): Delta Lake versioning - [Iceberg](https://docs.kedro.org/en/stable/integrations-and-plugins/iceberg_versioning/index.md): Apache Iceberg versioning - [Visual Studio Code & Cursor](https://docs.kedro.org/en/stable/ide/set_up_vscode/index.md): Visual Studio Code and Cursor setup for Kedro - [PyCharm](https://docs.kedro.org/en/stable/ide/set_up_pycharm/index.md): PyCharm setup for Kedro ## About Kedro - [Kedro architecture](https://docs.kedro.org/en/stable/getting-started/architecture_overview/index.md): Understanding Kedro's architecture - [Glossary](https://docs.kedro.org/en/stable/getting-started/glossary/index.md): Kedro terminology glossary - [Kedro's Technical Steering Committee](https://docs.kedro.org/en/stable/about/technical_steering_committee/index.md): Kedro's Technical Steering Committee - [Migration guide](https://docs.kedro.org/en/stable/about/migration/index.md): Migration guide between Kedro versions - [Kedro telemetry](https://docs.kedro.org/en/stable/about/telemetry/index.md): Understanding Kedro telemetry - [Kedro security model](https://docs.kedro.org/en/stable/about/security_model/index.md): Kedro security model - [Experimental APIs](https://docs.kedro.org/en/stable/about/experimental/index.md): Experimental APIs in Kedro