Discover / Automation
Dagster
by dagster-ioPython
Cloud-native orchestrator for data assets and pipelines.
Maturity: stable because 8y old, 1.13.16 released 4d ago. Derived from release and commit history, not a rating.
- Stars
- 16k
- Forks
- 2.2k
- Downloads / mo
- 9.3M
- Last commit
- 2026-08-03
- License
- Apache-2.0
- Open issues
- 2.6k
Market and trust evidence
Edition not yet matchedNo exact skills.sh identity match is available for this repository. Repository adoption and freshness remain visible above; install momentum is not inferred.
Trust analysis is a screening signal, not a security warranty. Read the ranking and trust methodology.
In practice
Written by AI from this repository’s README · high confidenceTask based schedulers do not track the data that pipelines produce, so lineage and asset freshness stay invisible.
Use it when
When you want to declare tables, models and reports as Python assets and have the orchestrator keep them up to date.
Not the right pick when
Wrong pick outside Python 3.9 through 3.14, and the asset centric model is heavier than plain task running needs.
Capabilities
- declare data assets as Python functions with the asset decorator
- asset graph rendered in the Dagster web UI
- integrated lineage and observability in one control plane
- designed for local development, unit tests, staging and production
- growing library of integrations for popular data tools
Requirements
- Python 3.9 through Python 3.14
Cost: Free and open source
Install
Derived from the published package name in the repository, not from a model.
Video walkthroughs
how to orchestrate data load tool using Dagster | dlt | ETL | Dagster
Fine-Tuning OpenAI Models with Dagster: Step-by-Step Guide
Third-party YouTube uploads matched to this tool by title, channel and repository name on 2026-08-03. Not made, reviewed or endorsed by SkillPilot. View counts and publish months are as of the match date and the month is approximate. Nothing loads from YouTube until you press play.
What the repository ships
Detected from the actual files in the repository root.
Latest release 1.13.16
Published 2026-07-30
New
- Declarative Automation can now automate jobs, available as a preview feature. Pass an
automation_conditiontodefine_asset_job— wrapping an asset-level condition withAutomationCondition.any_job_root_assets_matchorAutomationCondition.all_job_root_assets_match— to launch a single run of the job when the condition becomes true. Evaluation history is viewable in the new Automation tab on job pages. - [ui] The Components tab for a code location now lists all component instances in the location, not just app-managed ones.
Bugfixes
- [dagster-airbyte] Fixed a bug where Airbyte API requests were not retried on transient failures, causing syncs to fail after a single transient error despite the
request_max_retriessetting. (Thanks, @MercureTony!)
Documentation
- Clarified the distinction between definition-time and runtime metadata, and documented how to access asset definition metadata from a custom I/O manager.
- Documented the available configuration options for the Soda integration.
Tags
README
<div align="center">
<!-- Note: Do not try adding the dark mode version here with the picture element, it will break formatting in PyPI -->
<a target="_blank" href="https://dagster.io" style="background:none">
<img alt="dagster logo" src="https://raw.githubusercontent.com/dagster-io/dagster/master/.github/dagster-logo-light.svg" width="auto" height="100%">
</a>
<a target="_blank" href="https://github.com/dagster-io/dagster" style="background:none">
<img src="https://img.shields.io/github/stars/dagster-io/dagster?labelColor=4F43DD&color=163B36&logo=github">
</a>
<a target="_blank" href="https://github.com/dagster-io/dagster/blob/master/LICENSE" style="background:none">
<img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg?label=license&labelColor=4F43DD&color=163B36">
</a>
<a target="_blank" href="https://pypi.org/project/dagster/" style="background:none">
<img src="https://img.shields.io/pypi/v/dagster?labelColor=4F43DD&color=163B36">
</a>
<a target="_blank" href="https://pypi.org/project/dagster/" style="background:none">
<img src="https://img.shields.io/pypi/pyversions/dagster?labelColor=4F43DD&color=163B36">
</a>
<a target="_blank" href="https://twitter.com/dagster" style="background:none">
<img src="https://img.shields.io/badge/twitter-dagster-blue.svg?labelColor=4F43DD&color=163B36&logo=twitter" />
</a>
<a target="_blank" href="https://dagster.io/slack" style="background:none">
<img src="https://img.shields.io/badge/slack-dagster-blue.svg?labelColor=4F43DD&color=163B36&logo=slack" />
</a>
<a target="_blank" href="https://linkedin.com/showcase/dagster" style="background:none">
<img src="https://img.shields.io/badge/linkedin-dagster-blue.svg?labelColor=4F43DD&color=163B36&logo=linkedin" />
</a>
</div>
Dagster is a cloud-native data pipeline orchestrator for the whole development lifecycle, with integrated lineage and observability, a declarative programming model, and best-in-class testability.
It is designed for developing and maintaining data assets, such as tables, data sets, machine learning models, and reports.
With Dagster, you declare—as Python functions—the data assets that you want to build. Dagster then helps you run your functions at the right time and keep your assets up-to-date.
Here is an example of a graph of three assets defined in Python:
import dagster as dg
import pandas as pd
from sklearn.linear_model import LinearRegression
@dg.asset
def country_populations() -> pd.DataFrame:
df = pd.read_html("https://tinyurl.com/mry64ebh")[0]
df.columns = ["country", "pop2022", "pop2023", "change", "continent", "region"]
df["change"] = df["change"].str.rstrip("%").astype("float")
return df
@dg.asset
def continent_change_model(country_populations: pd.DataFrame) -> LinearRegression:
data = country_populations.dropna(subset=["change"])
return LinearRegression().fit(pd.get_dummies(data[["continent"]]), data["change"])
@dg.asset
def continent_stats(country_populations: pd.DataFrame, continent_change_model: LinearRegression) -> pd.DataFrame:
result = country_populations.groupby("continent").sum()
result["pop_change_factor"] = continent_change_model.coef_
return result
The graph loaded into Dagster's web UI:
<p align="center">
<img width="100%" alt="An example asset graph as rendered in the Dagster UI" src="https://raw.githubusercontent.com/dagster-io/dagster/master/.github/example-lineage.png">
</p>
Dagster is built to be used at every stage of the data development lifecycle - local development, unit tests, integration tests, staging environments, all the way up to production.
Quick Start:
If you're new to Dagster, we recommend checking out the docs or following the hands-on tutorial.
Dagster is available on PyPI and officially supports Python 3.9 through Python 3.14.
uv add dagster dagster-webserver dagster-dg-cli
Documentation
You can find the full Dagster documentation here, including the Quickstart guide.
<hr/>
Key Features:
<p align="center">
<img width="100%" alt="image" src="https://raw.githubusercontent.com/dagster-io/dagster/master/.github/key-features-cards.svg">
</p>
Dagster as a productivity platform
Identify the key assets you need to create using a declarative approach, or you can focus on running basic tasks. Embrace CI/CD best practices from the get-go: build reusable components, spot data quality issues, and flag bugs early.
Dagster as a robust orchestration engine
Put your pipelines into production with a robust multi-tenant, multi-tool engine that scales technically and organizationally.
Dagster as a unified control plane
Maintain control over your data as the complexity scales. Centralize your metadata in one tool with built-in observability, diagnostics, cataloging, and lineage. Spot any issues and identify performance improvement opportunities.
<hr />
Master the Modern Data Stack with integrations
Dagster provides a growing library of integrations for today’s most popular data tools. Integrate with the tools you already use, and deploy to your infrastructure.
<br/>
<p align="center">
<a target="_blank" href="https://dagster.io/integrations" style="background:none">
<img width="100%" alt="image" src="https://raw.githubusercontent.com/dagster-io/dagster/master/.github/integrations-bar-for-readme.png">
</a>
</p>
Community
Connect with thousands of other data practitioners building with Dagster. Share knowledge, get help,
and contribute to the open-source project. To see featured material and upcoming events, check out
our Dagster Community page.
Join our community here:
- 🌟 Star us on GitHub
- 📥 Subscribe to our Newsletter
- 🐦 Follow us on Twitter
- 🕴️ Follow us on LinkedIn
- 📺 Subscribe to our YouTube channel
- 📚 Read our blog posts
- 👋 Join us on Slack
- 🗃 Browse Slack archives
- ✏️ Start a GitHub Discussion
Contributing
For details on contributing or running the project for development, check out our [contributing
guide](https://docs.dagster.io/about/contributing).
License
Dagster is Apache 2.0 licensed.