-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Description
What problem does this address?
Loading states are one area where small improvements can make a big difference in how polished and intentional the editor feels. For many people, their first experience with the block editor is creating a new post or page, and they're immediately greeted with the starter patterns modal. Right now, the loading experience feels a bit aggressive and can make the interface look broken while the patterns actually load. It's not the best first impression.
We have quite a few places in the editor where content loads in a bit abruptly (the pattern inserter being a good example). These transitions make the editor feel less polished, especially on slower connections.
Proposed solution
Introduce a skeleton loading component that we can use throughout the editor to create smoother, more intentional loading states. This would improve perceived performance (skeleton screens make wait times feel shorter), reduce layout shift and give a more polished feeling (content has a predictable space before it loads, no abrupt changes).
I believe we could start experimenting with it in places like the pattern inserter, the starter pattern modal. And there's plenty of future opportunities: Dataviews, medialibrary, site editor when loading templates, or anything that can have a predictable layout or loads remote content.
Having a shared skeleton component would give us a consistent loading language across the editor and make it easy to improve these experiences incrementally
Here's a couple prototypes:
skeleton-pattern-inserter.mp4
skeleton-prototype-dataviews.mp4
^ Just a proof of concept, probably we should also make the title and content of each pattern part of the skeleton loading.