git clone https://github.com/nikolay-e/treemapper.git
cd treemapper
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev,tree-sitter]"
pre-commit install && pre-commit install --hook-type commit-msg- Create a branch:
feature/descriptionorfix/description - Make changes
- Run tests:
pytest - Run linting:
pre-commit run --all-files - Submit a pull request against
main
Integration tests only — no unit tests, no mocking. Tests run against real filesystems and real git repositories.
pytest # run all tests
pytest -x # stop on first failure
pytest tests/test_basic.py # run specific test file- Formatting:
black(line-length 130) - Import sorting:
isort - Linting:
ruff - Type checking:
mypy --strict - No docstrings or inline comments explaining "what" — code must be self-documenting
Follow Conventional Commits:
feat: add support for Ruby parsing
fix: handle empty directories in diff context
chore(deps): bump pathspec to 0.12
Use the bug report template.
See SECURITY.md.