changed customer to studio

This commit is contained in:
ykcheungab
2026-09-12 14:03:00 +08:00
parent a2db648560
commit 904c27125f
71 changed files with 112 additions and 3959 deletions
+16 -16
View File
@@ -4,35 +4,35 @@ Desktop applications that consume the Orisys SDK.
| App | Status |
|-----|--------|
| `apps/customer` | Scaffold shell (theme / locale / prefs / logging) |
| `apps/studio` | Scaffold shell (theme / locale / prefs / logging) |
| `apps/internal` | Stub for future calibration & automated testing |
## Layout
- `shared/` — common paths, prefs, theme, i18n, logging
- `apps/customer/config/` — locales, default prefs, editable `sensors/` copies
- `apps/customer/outputs/` — generated logs and calibration exports (gitignored)
- `build/` — Windows PyInstaller packaging (`build/customer/build.ps1`)
- `apps/studio/config/` — locales, default prefs, editable `sensors/` copies
- `apps/studio/outputs/` — generated logs and calibration exports (gitignored)
- `build/` — Windows PyInstaller packaging (`build/studio/build.ps1`)
## Run (customer shell)
## Run (studio shell)
```powershell
cd D:\repo\orisys-app
python -m pip install -e .\shared -e .\apps\customer
python .\apps\customer\run.py
python -m pip install -e .\shared -e .\apps\studio
python .\apps\studio\run.py
```
Or without install:
```powershell
$env:PYTHONPATH = "D:\repo\orisys-app\shared\src;D:\repo\orisys-app\apps\customer\src"
python D:\repo\orisys-app\apps\customer\run.py
$env:PYTHONPATH = "D:\repo\orisys-app\shared\src;D:\repo\orisys-app\apps\studio\src"
python D:\repo\orisys-app\apps\studio\run.py
```
### Local `orisys` SDK
`orisys_app_shared.force` imports `orisys.calibration` at module scope, so the
customer app cannot start against an SDK build that predates that module
studio app cannot start against an SDK build that predates that module
(the published 0.5.1 wheel does not include it). When working from a repo
checkout, install the SDK from source instead of from an index:
@@ -51,13 +51,13 @@ Both tools render the real main window with the offscreen Qt platform — no
display, camera or sensor hardware required:
```powershell
python .\apps\customer\tools\ui_check.py # layout/theme assertions
python .\apps\customer\tools\ui_snapshot.py --theme light --demo `
python .\apps\studio\tools\ui_check.py # layout/theme assertions
python .\apps\studio\tools\ui_snapshot.py --theme light --demo `
--sensor finger --panels cal,3d --size 1600x900 --out shot.png
```
`ui_check.py` needs only the runtime dependencies. The `pytest` suite in
`shared/tests` and `apps/customer/tests` covers the same ground plus locale and
`shared/tests` and `apps/studio/tests` covers the same ground plus locale and
preference-schema parity:
```powershell
@@ -70,7 +70,7 @@ at `C:\Windows\Fonts`; both tools set it automatically.
`ui_check.py` also runs the palette rules (WCAG contrast, colour separation,
ramp monotonicity) that guard the brand tokens; see
[`apps/customer/docs/ui-palette.md`](apps/customer/docs/ui-palette.md) for the
[`apps/studio/docs/ui-palette.md`](apps/studio/docs/ui-palette.md) for the
colour system, its relationship to the UI design spec, and every deliberate
deviation from it.
@@ -83,9 +83,9 @@ Dark mode is the default. Logos currently sit on a black tile; a transparent (or
## Versioning
- **Customer app version** (`orisys_customer.__version__`) — shown in Help → About and used for releases.
- **Studio app version** (`orisys_studio.__version__`) — shown in Help → About and used for releases.
- **Shared package version** (`orisys_app_shared.__version__`) — internal library version.
- **Shared API** (`orisys_app_shared.API_VERSION`) — compatibility tag. Customer declares `REQUIRES_SHARED_API`; startup logs a warning on mismatch.
- **Shared API** (`orisys_app_shared.API_VERSION`) — compatibility tag. Studio declares `REQUIRES_SHARED_API`; startup logs a warning on mismatch.
## Deferred