I had this idea a while back and even started it but scrapped it not too long after. Then I saw this tool: http://bennettfeely.com/clippy/ and it inspired me to do it ...
Shimmer works seamlessly as a Suspense fallback. When used this way, loading is always true because React automatically unmounts the fallback and replaces it with the resolved component.