https://raw.githubusercontent.com/astronomer/astronomer-cosmos/main/docs/_static/cosmos-logo.svg

fury ossrank downloads pre-commit.ci status

Run your dbt Core projects as Apache Airflow DAGs and Task Groups with a few lines of code. Benefits include:

  • Run dbt projects against Airflow connections instead of dbt profiles

  • Native support for installing and running dbt in a virtual environment to avoid dependency conflicts with Airflow

  • Run tests immediately after a model is done to catch issues early

  • Utilize Airflow’s data-aware scheduling to run models immediately after upstream ingestion

  • Turn each dbt model into a task/task group complete with retries, alerting, etc.

Example Usage#

You can render a Cosmos Airflow DAG using the DbtDag class. Here’s an example with the jaffle_shop project:

This will generate an Airflow DAG that looks like this:

https://raw.githubusercontent.com/astronomer/astronomer-cosmos/main/docs/_static/jaffle_shop_dag.png

Getting Started#

Check out the Quickstart guide on our docs. See more examples at /dev/dags and at the cosmos-demo repo.

Changelog#

We follow Semantic Versioning for releases. Check CHANGELOG.rst for the latest changes.

Contributing Guide#

All contributions, bug reports, bug fixes, documentation improvements, enhancements are welcome.

A detailed overview on how to contribute can be found in the Contributing Guide. Find out more about our contributors.

As contributors and maintainers to this project, you are expected to abide by the Contributor Code of Conduct.

License#

Apache License 2.0