dlt is an open-source Python library designed to automate data loading tasks across diverse environments, from Google Colab notebooks and AWS Lambda functions to Airflow DAGs and local development machines. The library addresses the challenge of extracting data from messy sources and loading it into well-structured datasets through lightweight Python interfaces.
The core functionality of dlt encompasses extraction, loading, inspection, and transformation of data. It can extract from REST APIs, SQL databases, cloud storage, Python data structures, and over 5000 verified sources available through the dlt workspace. The library automatically infers schemas and data types, normalizes data, and handles nested data structures. It supports loading to popular destinations and provides an interface for creating custom destinations to enable reverse ETL pipelines.
A distinctive feature of dlt is its LLM-native workflow, built from the ground up to work with large language models. This allows users to take pipeline code from a notebook directly to data processing, making it accessible for AI-assisted development. The library supports Python 3.10 through Python 3.14, though Python 3.14 support is currently experimental due to limited availability of optional extras.
dlt automates pipeline maintenance through incremental loading, schema evolution, and schema and data contracts. It provides both Python and SQL data access capabilities, supports transformations, includes pipeline inspection tools, and enables data visualization in Marimo Notebooks. The library can be deployed anywhere Python runs, with specific support for Airflow and serverless cloud functions.
The library follows semantic versioning with the MAJOR.MINOR.PATCH pattern and recommends using compatible release specifiers for dependency management.
Community engagement is emphasized through an active Slack community, public GitHub project tracking, and contribution guidelines. The project notes that while new destination implementations are unlikely to be merged due to maintenance costs, bugfixes, improvements, and enhancements to existing destinations like SQLAlchemy are welcomed. The library is released under the Apache 2.0 License and is sponsored by Blacksmith, which provides CI/CD infrastructure support.