A dbt (data build tool) project for data transformations using uv as the package manager.
- Python 3.11 or higher
- uv package manager (https://docs.astral.sh/uv/getting-started/installation/)
-
Clone this repository:
git clone <repository-url> cd dbt_dani_sports
-
Install dependencies:
uv sync
-
Configure dbt profile:
- Copy the example profiles file:
cp profiles.yml.example profiles.yml
- Edit
profiles.yml
to configure your database connection
- Copy the example profiles file:
-
Test the setup:
# Activate the virtual environment source .venv/bin/activate # Test dbt connection dbt debug # Run the example models dbt run
models/ # SQL model files
example/ # Example models
macros/ # Jinja2 macros
tests/ # Data tests
seeds/ # CSV files for seeding
snapshots/ # Snapshot models
analyses/ # Analytical SQL files
dbt_project.yml # dbt project configuration
profiles.yml.example # Example database connection profiles
pyproject.toml # Project dependencies (managed by uv)
uv.lock # Dependency lock file
README.md # This file
# Activate virtual environment
source .venv/bin/activate
# Run models
dbt run
# Run tests
dbt test
# Generate documentation
dbt docs generate
dbt docs serve
# Debug connection
dbt debug
# Clean build artifacts
dbt clean
This project uses:
- uv for Python package management
- dbt-core for data transformations
- dbt-duckdb as the default database adapter (lightweight, file-based)
To add new dependencies:
uv add <package-name>
To update dependencies:
uv sync --upgrade