update readme
This commit is contained in:
@@ -28,19 +28,36 @@ pip install -e . # install the `pygui` package (src/ layout) in edita
|
|||||||
|
|
||||||
## Run
|
## Run
|
||||||
|
|
||||||
### Option A: Using `uv`
|
|
||||||
```bash
|
```bash
|
||||||
uv run python -m pygui
|
make run
|
||||||
```
|
|
||||||
|
|
||||||
### 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
|
|
||||||
```
|
```
|
||||||
|
|
||||||
This launches the Qt window and loads the `ISC` QML module from `src/pygui/ISC/Main.qml`.
|
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
|
## Project Structure
|
||||||
|
|
||||||
The application lives under a `src/` layout as the `pygui` package:
|
The application lives under a `src/` layout as the `pygui` package:
|
||||||
|
|||||||
Reference in New Issue
Block a user