What makes this a better approach than having something like React run in a ServiceWorker?
www.sparational.com seems to have gone down since I started writing this comment, but when I clicked on the link, it seemed to have quite a considerable wait until anything appeared on the screen.