This package highlights areas of a dbt project that are misaligned with dbt Labs' best practices. Specifically, this package tests for:
- Modeling - your dbt DAG for modeling best practices
- Testing - your models for testing best practices
- Documentation - your models for documentation best practices
- Structure - your dbt project for file structure and naming best practices
- Performance - your model materializations for performance best practices
- Governance - your best practices for model governance features.
In addition to tests, this package creates the model int_all_dag_relationships
which holds information about your DAG in a tabular format and can be queried using SQL in your Warehouse.
Currently, the following adapters are supported:
- BigQuery
- Databricks/Spark
- PostgreSQL
- Redshift
- Snowflake
- DuckDB
- Trino (tested with Iceberg connector)
Check dbt Hub for the latest installation instructions, or read the docs for more information on installing packages.
In your dbt_project.yml
, add the following config:
# dbt_project.yml
dispatch:
- macro_namespace: dbt
search_order: ['dbt_project_evaluator', 'dbt']
This is required because the project currently overrides a small number of dbt core macros in order to ensure the project can run across the listed adapters. The overridden macros are in the cross_db_shim directory.
The full documentation and list of rules are available on this website