This README explains how to set up the project's Python environment using uv, configure dbt's profiles.yml, and run dbt commands. Keep credentials and secrets out of version control.
- macOS (or Linux)
- Python 3.8+
- git
- pipx (recommended) or pip
https://docs.astral.sh/uv/getting-started/installation/
- From the project root (where pyproject.toml lives):
uv install# oruv syncdepending on uv version
- This creates a managed virtual environment and installs dependencies declared in the project.
- Either activate the created venv (if present):
source .venv/bin/activate
- Or run commands through uv so the proper environment is used, e.g.:
uv run dbt -- debug
Use a project-level profiles.yml (recommended for reproducible CI).
- Place a profiles.yml in the project root and tell dbt to use it:
cp profiles.example.yml profiles.ymlexport DBT_PROFILES_DIR="$(pwd)"
- From project root (use uv run or activated venv):
uv run dbt -- debug- or
dbt debug
- Install package dependencies:
uv run dbt -- deps
- Load seeds (if any):
uv run dbt -- seed
- Run models:
uv run dbt -- run
- Run tests:
uv run dbt -- test
- Generate docs:
uv run dbt -- docs generateuv run dbt -- docs serve
- If dbt can't find profiles.yml, confirm DBT_PROFILES_DIR or copy profiles.yml to ~/.dbt/profiles.yml.
- Use
dbt debugto surface connection/auth problems. - Check network/firewall and service account permissions for cloud warehouses.
- dbt docs: https://docs.getdbt.com
- dbt community: https://community.getdbt.com