Contributing GuideΒΆ

dwh-auditor is an open-source project. Bug reports, feature improvement proposals, and Pull Requests are welcome.

Development Environment SetupΒΆ

git clone https://github.com/shirokurolab/dwh-auditor.git
cd dwh-auditor

# Create virtual environment (uv recommended)
uv venv
uv pip install -e ".[dev]"

# Run tests
uv run pytest tests/ -v

# Lint & Format check
uv run ruff check .
uv run ruff format --check .

# Type check
uv run mypy src/dwh_auditor

Contribution FlowΒΆ

  1. Confirm or Create an Issue

  2. Create a feature/<feature-name> or fix/<bug-name> branch

  3. Implement the code (TDD: Write tests first)

  4. Pass ruff / mypy checks

  5. Create a Pull Request

Development RulesΒΆ

Rule

Details

TDD

Write tests first (Red β†’ Green β†’ Refactor)

Type Hinting Required

Add type hints to all functions/methods and pass mypy --strict

Zero Lint Warnings

Maintain zero warnings with ruff check / ruff format

Isolation of Extractor

Import google.cloud.bigquery exclusively in extractor/bigquery.py

For more information, see CONTRIBUTING.md.

LicenseΒΆ

MIT License β€” See LICENSE for details.