0.6.0 blocco 3: copertina, versione, documenti e anteprime nelle due lingue
This commit is contained in:
@@ -9,24 +9,30 @@ status, domestic hot water, and the house target temperature per zone.
|
||||
|
||||
## What it does
|
||||
|
||||
- **Home**, organised like the official Aira app: outdoor temperature and
|
||||
*at home / away* at the top, a plain-language status line ("Relax: the heat
|
||||
pump is running smoothly"), then the **plant card** with the two readings that
|
||||
matter (room temperature and domestic hot water, each with its target).
|
||||
Tapping the card opens the plant page. Below that the controls: house target
|
||||
with a 5–30 °C slider (0.5 °C steps) and a confirmation before the command
|
||||
leaves, domestic hot water target (45–60 °C) and the boost buttons
|
||||
- **Home**, one screen to look at: a coloured dot with a one-line status
|
||||
("Everything is fine", "Heating the hot water"), the time of the last update,
|
||||
the two readings that matter (house and domestic hot water, each with its
|
||||
target) side by side and **tappable**, and three quick actions: boost, away
|
||||
mode and the plant commands. It fits without scrolling — the controls live in
|
||||
their own pages
|
||||
- **Setpoints** page: house target and hot water target, each with the value the
|
||||
plant is keeping right now, a slider (the proposal, the plant value does not
|
||||
move), a row of quick values for cold fingers and a confirmation button that
|
||||
only lights up when there is something to change
|
||||
- **Data** page: heat produced, electricity used, efficiency (COP) for hot water
|
||||
and heating, savings on the bill, CO₂ avoided and the Smart Tariff Control
|
||||
saving, month by month. These are the numbers Aira computes in the cloud,
|
||||
exactly as in the official app's *Data* tab
|
||||
- **Plant** page: status (connection, mode, away/night/forced heating, outdoor
|
||||
and indoor temperature, zones, last reading), accessories (the wall thermostat
|
||||
with temperature, humidity, signal, battery), software versions and the error
|
||||
count
|
||||
- **Other commands** page: away mode, night mode for one hour, force heating,
|
||||
heating function on/off, legionella cycle, DHW heating on/off and a plant
|
||||
check — with the current state at the top, so nothing is pressed blindly
|
||||
- **Plant** page: status (connection, mode, away/night/forced heating, manual
|
||||
mode, defrost, signature lights, pump state, allowed modes, outdoor and indoor
|
||||
temperature, zones, last reading), accessories (the wall thermostat with
|
||||
temperature, humidity, signal, battery), software versions, the error count and
|
||||
the plant check. The extended status sentence ("Relax: the heat pump is running
|
||||
smoothly") lives here
|
||||
- **Plant commands** page: four switches (away mode, forced heating, heating, hot
|
||||
water active) that show the state of the plant and change it in one tap, plus
|
||||
the buttons for what has no state: legionella cycle and night mode for one
|
||||
hour. The switches follow the plant — they never anticipate it
|
||||
- **Cover page** showing the house temperature
|
||||
- Address and bridge token live in the app settings (QSettings), never in the
|
||||
binary
|
||||
@@ -39,13 +45,13 @@ status, domestic hot water, and the house target temperature per zone.
|
||||
Layout previews (rendered with the real values the plant returned, **not**
|
||||
screenshots — see *Status*):
|
||||
|
||||
| Home | Data | Plant |
|
||||
| Home | Setpoints | Data |
|
||||
|---|---|---|
|
||||
|  |  |  |
|
||||
|  |  |  |
|
||||
|
||||
| Other commands | Settings | Cover |
|
||||
|---|---|---|
|
||||
|  |  |  |
|
||||
| Plant | Plant commands | Settings | Cover |
|
||||
|---|---|---|---|
|
||||
|  |  |  |  |
|
||||
|
||||
## Why there is a bridge
|
||||
|
||||
@@ -136,12 +142,14 @@ python3 tests/ui_contract_check.py http://192.168.3.21:8790
|
||||
|
||||
Verified so far:
|
||||
|
||||
- **61/61** core checks (`tests/core_test.cpp`), compiled with no warnings
|
||||
- **79/79** core checks (`tests/core_test.cpp`), compiled with no warnings —
|
||||
including the one-line and extended status sentences, so what the home says
|
||||
about the plant is verified without a phone
|
||||
- **48/48** bridge checks, offline (`bridge/test_bridge_commands.py`) —
|
||||
including that a zone command always carries every zone, that absurd values
|
||||
are refused (40 °C, zone 3, text), and the Wh→kWh / money conversions of the
|
||||
statistics
|
||||
- **170/170** strings translated in the Italian catalogue, checked by loading
|
||||
- **190/190** strings translated in the Italian catalogue, checked by loading
|
||||
the compiled `.qm` in the test the same way `main.cpp` does: source English
|
||||
in, Italian out, and back to English when the catalogue is removed
|
||||
- numbers, amounts and month names formatted through `QLocale`, so the decimal
|
||||
@@ -202,13 +210,16 @@ src/settings.{h,cpp} QSettings in AppConfigLocation (SailJail sandbox)
|
||||
src/translator.{h,cpp} UI language: system locale, English fallback, reload
|
||||
src/main.cpp context properties: appSettings, api, translator
|
||||
qml/harbour-aira.qml ApplicationWindow + cover
|
||||
qml/pages/MainPage.qml home: status, plant card, heating and water
|
||||
qml/pages/MainPage.qml home: one-line status, two readings, quick actions
|
||||
qml/pages/SetpointsPage.qml house and water targets, quick values, boost
|
||||
qml/pages/DataPage.qml energy, efficiency and savings
|
||||
qml/pages/PlantPage.qml status, accessories, versions, errors
|
||||
qml/pages/CommandsPage.qml the other commands, current state on top
|
||||
qml/pages/PlantPage.qml status, accessories, versions, errors, diagnostics
|
||||
qml/pages/CommandsPage.qml the plant commands, state shown by switches
|
||||
qml/pages/SettingsPage.qml
|
||||
qml/components/InfoRow.qml label on the left, value on the right
|
||||
qml/components/ValueRow.qml title + subtitle left, big value right
|
||||
qml/components/ReadingCell.qml tappable reading: title, big value, charge bar
|
||||
qml/components/NoticeBar.qml command messages, anchored to the bottom edge
|
||||
qml/components/ActionButton.qml command button, optional confirmation
|
||||
tests/core_test.cpp core checks (headless)
|
||||
tests/ui_contract_check.py QML keys vs bridge keys (bridge must be running)
|
||||
@@ -216,7 +227,7 @@ bridge/ local HTTP bridge -> see bridge/README.md
|
||||
translations/ harbour-aira-it.ts (English is the source language)
|
||||
docs/PIANO.md project plan and decisions (Italian)
|
||||
docs/PROTOCOL.md bridge API
|
||||
docs/UX-STUDIO.md UX review + proposal for 0.6.0 (Italian)
|
||||
docs/UX-STUDIO.md UX review and what changed in 0.6.0 (Italian)
|
||||
docs/ux/ UX study wireframes
|
||||
docs/anteprima/ layout previews (English; docs/anteprima/it/ Italian)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user