# ViewIT

<img src="addon/resources/logo.png" alt="ViewIT Logo" width="220" />

ViewIT ist ein Kodi Addon.
Es durchsucht Provider und startet Streams.

## Projektstruktur
- `addon/` Kodi Addon Quellcode
- `scripts/` Build Scripts
- `dist/` Build Ausgaben
- `docs/` Doku
- `tests/` Tests

## Build und Release
- Addon Ordner bauen: `./scripts/build_install_addon.sh`
- Kodi ZIP bauen: `./scripts/build_kodi_zip.sh`
- Version pflegen: `addon/addon.xml`
- Reproduzierbares ZIP: `SOURCE_DATE_EPOCH` optional setzen

## Lokales Kodi Repository
- Repository bauen: `./scripts/build_local_kodi_repo.sh`
- Repository starten: `./scripts/serve_local_kodi_repo.sh`
- Repo-Artefakte pruefen: `./scripts/verify_repo_artifacts.py ./dist/repo`
- Standard URL: `http://127.0.0.1:8080/repo/addons.xml`
- Eigene URL beim Build: `REPO_BASE_URL=http://<host>:<port>/repo ./scripts/build_local_kodi_repo.sh`

## Entwicklung
- Router: `addon/default.py`
- Plugins: `addon/plugins/*_plugin.py`
- Settings: `addon/resources/settings.xml`

## Tests
- Dev Pakete installieren: `./.venv/bin/pip install -r requirements-dev.txt`
- Tests starten: `./.venv/bin/pytest`
- XML Report: `./.venv/bin/pytest --cov-report=xml`

### Linting & Formatierung
- Ruff Linting: `./.venv/bin/ruff check addon docs`
- Black Format Check: `./.venv/bin/black --check addon docs`

## Dokumentation
Siehe `docs/`.
