Metadata-Version: 2.4
Name: breeze-widget
Version: 0.3.0
Summary: Clean-room Breeze widget toolkit for PySide6 desktop applications
Author: Taron686
Maintainer: Taron686
License-Expression: MIT
Project-URL: Homepage, https://github.com/Taron686/breeze-widget
Project-URL: Repository, https://github.com/Taron686/breeze-widget
Project-URL: Documentation, https://github.com/Taron686/breeze-widget#readme
Project-URL: Issue Tracker, https://github.com/Taron686/breeze-widget/issues
Keywords: pyside6,qt,widgets,desktop,breeze,ui
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: X11 Applications :: Qt
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: User Interfaces
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: PySide6>=6.6.0
Provides-Extra: test
Requires-Dist: pytest>=8; extra == "test"
Requires-Dist: pytest-qt>=4.4; extra == "test"
Dynamic: license-file

# BreezeWidget

> Dieses Repository ist ein komplett vibe coded Work-in-Progress-Projekt fuer
> PySide6. Die API ist noch nicht final, interne Strukturen koennen sich aendern,
> und das Repo ist aktuell vor allem fuer Entwicklung, Tests, Experimente und
> Migrationen gedacht.

BreezeWidget ist eine saubere, lokale PySide6-Widget- und Theming-Schicht mit
einem Breeze-inspirierten Look. Das Projekt verfolgt das Ziel, Desktop-Apps mit
Qt/PySide6 ein konsistentes Fenstersystem, Theme-Handling, Icons, Navigation,
Status-Komponenten, Eingaben, Karten, Views und Demo-Oberflaechen bereitzustellen,
ohne von einer externen GPL-Widget-Bibliothek abhaengig zu sein.

## Aktueller Status

Das Paket ist pre-1.0 und wird aktiv umgebaut. Die oeffentliche API ist in
[`AGENTS.md`](AGENTS.md) beschrieben und wird durch Tests abgesichert; alles
ausserhalb dieser dokumentierten Oberflaeche gilt als intern. Das Repo enthaelt
bereits lauffaehige Demos, Tests, lokale Icons, Theme-/Stylesheet-Infrastruktur
und eine wachsende Sammlung von PySide6-Komponenten, ist aber noch kein
stabiler Framework-Release.

## Was man mit dem Repo machen kann

- BreezeWidget lokal installieren und in eigenen PySide6-Prototypen verwenden.
- BreezeWidget nach der PyPI-Veroeffentlichung direkt per `pip install`
  installieren.
- Die Demo-Anwendungen starten, um den aktuellen Stand der UI-Schicht zu pruefen.
- Tests ausfuehren, um die dokumentierte Public API und Kernverhalten zu
  verifizieren.
- Eigene Widgets oder Stylesheet-Fragmente gegen die vorhandene Theme- und
  Icon-Infrastruktur entwickeln.
- Das Projekt frei forken, anpassen und weiterverwenden.

## Installation aus PyPI

```powershell
python -m pip install breeze-widget
```

Das PyPI-Paket heisst `breeze-widget`; der Python-Import bleibt
`breezewidget`.

## Installation fuer Entwicklung

```powershell
.\.venv\Scripts\python.exe -m pip install -e ".[test]"
```

## Demos starten

```powershell
.\.venv\Scripts\python.exe .\examples\breeze_demo.py
.\.venv\Scripts\python.exe .\examples\widget_demo.py
```

## Tests ausfuehren

```powershell
$env:QT_QPA_PLATFORM = "offscreen"
.\.venv\Scripts\python.exe -m pytest
```

## Public API

Die Root-Imports aus `breezewidget` sowie die kuratierten Subsystemmodule
`breezewidget.window`, `breezewidget.theme`, `breezewidget.icons` und
`breezewidget.navigation` sind die relevante oeffentliche Oberflaeche. Details,
Symbolnamen, stabile Qt-Dynamic-Properties und nicht-oeffentliche Bereiche sind
im API-Vertrag in [`AGENTS.md`](AGENTS.md) festgehalten.

Direkte Imports aus tieferen Implementierungsmodulen sollten vermieden werden,
weil diese waehrend des Refactors verschoben oder umbenannt werden koennen.

## Lizenz

BreezeWidget steht unter der MIT-Lizenz. Das Repo kann damit frei genutzt,
kopiert, veraendert und weitergegeben werden, auch ohne Bezahlung. Details
stehen in [`LICENSE`](LICENSE).
