update readme

This commit is contained in:
jack
2026-06-18 13:16:54 -07:00
parent 66942d250d
commit b417211476
+25 -8
View File
@@ -28,19 +28,36 @@ pip install -e . # install the `pygui` package (src/ layout) in edita
## Run
### Option A: Using `uv`
```bash
uv run python -m pygui
```
### Option B: Using standard Python (venv)
```bash
source .venv/bin/activate # or .venv\Scripts\activate on Windows
python -m pygui # or run the `isc` console script
make run
```
This launches the Qt window and loads the `ISC` QML module from `src/pygui/ISC/Main.qml`.
## Development
The project uses `uv` for dependency management and tooling, `Ruff` for linting and formatting, `Mypy` for static type checking, and `pytest` for unit tests.
A `Makefile` is provided to simplify common development and verification tasks:
| Command | Description |
|---------|-------------|
| `make install` | Sync dependencies and set up the local `.venv` using `uv` |
| `make run` | Launch the ISenseCloud application |
| `make test` | Run the `pytest` test suite |
| `make lint` | Check code style and quality with the `Ruff` linter |
| `make fix` | Automatically fix fixable `Ruff` style violations |
| `make typecheck` | Run the `Mypy` static type checker |
| `make clean` | Clean build and tool caches (`.pytest_cache`, `.ruff_cache`, `.mypy_cache`, `__pycache__`) |
### Ruff Configuration
Ruff is configured in `pyproject.toml` to enforce:
- **E/W**: Pycodestyle errors and warnings
- **F**: Pyflakes linter rules
- **I**: Import sorting (isort parity)
- **N**: PEP 8 naming conventions
## Project Structure
The application lives under a `src/` layout as the `pygui` package: