The summary.
VIEWS ARE VALUES, RECREATED WHEN STATE CHANGES
They are cheap and disposable, not objects you hold and modify. Keep heavy work out of the body — it may be evaluated frequently.
ONE SOURCE OF TRUTH FOR EACH PIECE OF DATA
Violating it produces copies that diverge and interfaces showing inconsistent values. Keep transient interface state local and screen logic in a model object.
LAYOUT IS A NEGOTIATION, NOT AN IMPOSITION
A parent proposes, a child chooses, the parent positions. Most layout confusion comes from expecting the parent to impose a size.
Modifier order changes the result, as it does in every declarative toolkit.
MODEL THE NAVIGATION PATH AS DATA
That is what makes deep linking and state restoration possible.
PREVIEW EVERY STATE: DEFAULT, LOADING, EMPTY, ERROR
It is the fastest way to ensure they all exist — and a view that fetches its own data cannot be previewed meaningfully.
MUCH ACCESSIBILITY WORKS BY DEFAULT HERE
Which is rarely true of hand-built interfaces. Still check dynamic type and contrast.