Empty states
In the portal: Settings, then Surfaces. Nothing here is a setting of its own.
What it is
There are exactly two things a participant can see when there is nothing for them to do, and one of them is nothing at all.
A surface with no items is not drawn. No heading, no placeholder, no line saying it is empty. It is skipped entirely, so an empty surface is invisible rather than empty. A surface you have just created therefore leaves no trace on the screen until a delivery lands in it, which keeps a participant's home clean while you build.
A home screen with nothing on it anywhere shows one line. That line is
Nothing scheduled right now, under a small outlined tick. It is the same on
both phones and it is the only empty-state copy the home screen has.
What it looks like
The three states, and the exact words.
| What the participant sees | When | The words |
|---|---|---|
| A spinner | The phone has not finished loading the home screen yet | Loading home |
| A small tick and one line | Loading has finished and there is genuinely nothing | Nothing scheduled right now |
| Nothing where your surface was | That one surface has no items, but others do | none |
A fourth state belongs to a single item rather than the screen. A delivery whose
content has not reached the phone yet draws a greyed row headed Unavailable,
with a second line telling the participant it will appear once synced. It is not
tappable. It exists so that a delivery somebody was given is always accounted for on
the screen.
When this matters
It matters on the first day of a build, when nothing works and nothing is broken.
A worked example. A content operator creates a surface, sets its look, gives it a priority, saves it, and opens the app to check. The home screen is exactly as it was. Nothing has gone wrong. A surface is a frame, and no delivery has been made to it yet, so there is nothing to draw. The way to see it is to assign something to a test participant.
How it renders
The same line covers every empty day. A participant between journeys, one who
has finished a journey and one on a rest day all read Nothing scheduled right now.
If a particular moment needs its own words, deliver an item that carries them.
The empty line only appears once loading has finished. A participant who
opens the app with no connection sees the spinner and its Loading home line
rather than being told there is nothing.
A surface with one item and a surface with twenty are drawn the same way. There is no special case for a single item.
A heading never appears without items under it. Headings are drawn as part of a surface, and a surface with no items is skipped before its heading is ever considered.
Turning a surface's heading off does not empty it. showHeader removes the name
and the picture. The items stay. If you want a surface gone, remove the deliveries or
point them somewhere else.
When a participant reports a blank home screen, start with the schedule. The most common reason is that today is not a scheduled day for anything they hold, so it is a schedule question rather than a home screen question.
What you can now do
Tell the three apart on sight. A spinner means the phone is still loading. One line under a small tick means loading finished and there is genuinely nothing. A surface you configured leaving no trace means no delivery has landed in it yet, which is the normal state on the first day of a build.
The way to see a new surface is to assign something to a test participant. See What puts an item there.