combination of prefetching/ partial prerendering / aggressive caching is a good idea
there has been especially 2 recent demos that go over this thoroughly!
project 1 code demo project 2 code demo
a good overview in a more birds eye view