Metadata-Version: 2.4
Name: t-run
Version: 0.0.2
Summary: Config dir aware CLI wrapper and pre-commit hook dispatcher
Project-URL: Homepage, https://github.com/rsb-23/trun
Project-URL: Issues, https://github.com/rsb-23/trun/issues
Author: Rishabh B
License-Expression: MIT
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: >=3.11
Provides-Extra: build
Requires-Dist: build; extra == 'build'
Requires-Dist: twine; extra == 'build'
Provides-Extra: dev
Requires-Dist: ruamel-yaml; extra == 'dev'
Provides-Extra: lint
Requires-Dist: pre-commit; extra == 'lint'
Provides-Extra: test
Requires-Dist: hypothesis; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Description-Content-Type: text/markdown

# T-run (Tool Run)

Config-dir-aware CLI wrapper and pre-commit hook dispatcher.

Reads a `config-dir` setting from `pyproject.toml` and routes tools
(ruff, black, isort, mypy, flake8, pylint) to look for their config
files there, instead of the project root.

## pyproject.toml

```toml
[tool]
config-dir = "config"   # default: "1_config"
```

## Install

```bash
pipx install t-run # global
```

## Usage

```bash
trun ruff check .
trun black .
trun mypy .
trun isort .
trun flake8 .
trun pylint *
```

Or without installing, from the repo root:

```bash
python -m trun ruff .
```

## pre-commit

```yaml
repos:
  - repo: https://github.com/rsb-23/trun
    rev: v0.0.2
    hooks:
      - id: ruff-check
      - id: ruff-format
      - id: black
      - id: isort
      - id: mypy
```

Only the hooks you list are installed — each pulls its own pinned
dependency via `additional_dependencies` in `.pre-commit-hooks.yaml`.

## Build

```bash
pip install build
git tag v0.1.0
python -m build
```

## License

MIT
