From bbrewington-tools
Provides patterns for building dbt models, adding tests, and designing data models including dimensional modeling, staging/intermediate/marts organization, naming conventions, and testing strategies.
npx claudepluginhub bbrewington/software-data-and-ai-tools --plugin bbrewington-toolsThis skill uses the workspace's default tool permissions.
Patterns for dbt data transformation projects.
Provides production-ready dbt patterns for analytics engineering including model layers (staging, intermediate, marts), naming conventions, testing, documentation, incremental models, and project structure. Use for data transformations and models.
Builds and modifies dbt models with SQL transformations using ref() and source(), creates tests, validates results with dbt show. For dbt projects: modeling, debugging errors, data exploration, testing, change evaluation.
Provides dbt patterns for model organization in staging, intermediate, and marts layers, including project structure, sources, configs, SQL examples, and testing setups. Useful for data transformation projects.
Share bugs, ideas, or general feedback.
Patterns for dbt data transformation projects.
This skill is organized into the following modules. Read the relevant module(s) based on the task:
| Module | File | Use When |
|---|---|---|
| Data Modeling | references/data-modeling.md | Designing dimensional models, defining grain, facts vs dimensions, SCDs |
| Model Layers | references/model-layers.md | Organizing staging/intermediate/marts, naming conventions, project structure |
| Package Testing | references/testing-packages.md | Integration tests for dbt package development |
dbt run # Run all models
dbt run --select +model_name # Model + upstream
dbt run --select model_name+ # Model + downstream
dbt run --select tag:daily # Models with tag
dbt test # Run all tests
dbt test --select "test_type:unit" # Unit tests only
dbt test --select "test_type:data" # Data tests only
dbt build # Run + test in DAG order
dbt build --select state:modified+ # Modified + downstream (CI)
dbt docs generate # Generate documentation
dbt source freshness # Check source freshness
| Layer | Pattern | Example |
|---|---|---|
| Staging | stg__<source>__<table> | stg__stripe__customers |
| Intermediate | int_<entity>__<transform> | int_customers__enriched |
| Fact | fct_<event> | fct_orders |
| Dimension | dim_<entity> | dim_customers |
| Type | Convention | Examples |
|---|---|---|
| IDs | <entity>_id | customer_id, order_id |
| Timestamps | <event>_at | created_at, updated_at, shipped_at |
| Dates | <event>_date | order_date, birth_date |
| Booleans | is_<state> or has_<thing> | is_active, has_subscription |
| Amounts | <name>_<unit> | amount_usd, quantity_units |
| Counts | <thing>_count | order_count, item_count |
Integration Tests ← Package development only
Unit Tests ← Complex transformation logic
Singular Tests ← Business rules
Generic Tests ← Keys, constraints, patterns
Source Freshness ← Pipeline health
Contracts ← Schema enforcement
| Always | Sometimes | Rarely |
|---|---|---|
| Primary keys (unique + not_null) | Optional FKs | Every column not_null |
| Required foreign keys | Numeric ranges | Columns in contracts |
| Business-critical derived fields | String patterns | Staging columns |
| Status/enum columns | Row count bounds | Intermediate models |
{{ var() }} or {{ env_var() }})