2026-09-03 18:48:32 +09:00
|
|
|
---
|
2026-09-04 14:14:17 +09:00
|
|
|
type: guidelines
|
2026-09-03 18:48:32 +09:00
|
|
|
---
|
|
|
|
|
# Display client guidelines
|
|
|
|
|
|
|
|
|
|
## 1. The client knows the contract, not the car
|
|
|
|
|
- No CAN frame IDs, no DBC knowledge, no device paths. Topic names and payload
|
|
|
|
|
schemas only.
|
|
|
|
|
- If rendering something requires new knowledge of the vehicle, that knowledge
|
|
|
|
|
belongs upstream in the decoder, not here.
|
|
|
|
|
|
|
|
|
|
## 2. Render whatever state exists, immediately
|
|
|
|
|
- Retained topics mean a client connecting mid-drive has state at once. Never
|
|
|
|
|
block the first paint on a full set of signals.
|
|
|
|
|
- Missing is a normal state and must have a visual form. It is not an error.
|
|
|
|
|
|
|
|
|
|
## 3. Design for a split screen
|
|
|
|
|
- The screen may be shared with another app. Do not assume full width.
|
|
|
|
|
|
|
|
|
|
## 4. To be added
|