Promise-based loading
Every loading state is a promise about what will arrive and where. Keep it, and waiting feels short. Break it, and people feel cheated even when they cannot say why.
Rules
Shape the placeholder from the real component. Keep it exactly where the content will land. If the data is fast, show nothing.
The test
Throttle the network and watch the page land. If anything moves when the data arrives, the promise was broken.
Behind this
connections
notes