git clone https://github.com/TATP-233/GaussainRenderer.git
cd GaussainRenderer
uv pip install -e ".[dev]"- Fork the repo and create a branch from
main - Make your changes
- Run checks before committing:
uv run ruff check . && uv run ruff format --check . && uv run mypy gaussian_renderer && uv run pytest- Open a pull request against
main
- Formatter:
ruff format(line length 120) - Linter:
ruff check(E, F, I rules) - Type checker:
mypy(strict import checking disabled)
Fix issues with:
uv run ruff check --fix .
uv run ruff format .Follow Conventional Commits:
feat: new feature
fix: bug fix
docs: documentation only
style: formatting, no logic change
refactor: code restructure, no behavior change
test: add or update tests
chore: build, CI, dependencies
- Runtime deps go in
[project.dependencies](keep minimal) - Optional feature deps go in a named extra under
[project.optional-dependencies] - Dev/test deps go in the
devextra
Tests live in tests/. Run with:
uv run pytest # all tests
uv run pytest -v -k foo # filter by name- No CUDA required — mock
torch.Tensor.cudaandgsplatfor unit tests - Use
BANANA_PLYfromconftest.pyas the standard fixture file - Mark tests that need the fixture with
@pytest.mark.skipif(not BANANA_PLY.exists(), ...)