The functionality for this module sounds very similar to the Quicklink module.
Can we compare the two in the interests of avoiding duplicated efforts, combining best features/practices, and improving information and research for potential users.
Pros/Cons & Differences - how is this module fundamentally different from Quicklink? What does it do better or worse? Is it simpler or more complicated? What are the key differences that would enable a prospective user to choose between the two?
Merge - is there potential to review the two implementations, and then combine resources/efforts to put forth a single, best recommended module?
Alternatives - Should 'Speculative Loading' and 'Quicklink' be listed as alternative options for each other?
Comments
Comment #2
jurriaanroelofs commentedThank you for pointing this out. I wasn't previously aware of the Quicklink module, and it does appear to overlap with the goals of Speculative Loading. At a high level, Quicklink prefetches in-viewport links during idle time, while Speculative Loading provides a more flexible, standards-based approach using the browser's native speculation rules, including support for prerendering.
It’s possible that the two modules could be consolidated, and Quicklink might be a more appropriate home given its maturity. However, I haven’t had the time to do a detailed technical comparison or evaluate its current implementation. Until then, I’ll position Speculative Loading as an alternative approach and update the documentation accordingly.
Since the quicklinks module does not mention Speculative Loading I think it only uses the older prefetch tech, here is a quick comparison of the 2 technologies:
fetch(preloads HTML as text)prefetch,prerender, orpreload(native browser support)Comment #3
capellicI just realized this is cross-posted over here: https://www.drupal.org/project/quicklink/issues/3519746
Comment #4
tunetheweb commentedFWIW, a few updates since that table was posted:
prender_until_scriptto speculation rules to allow a middle-ground between prefetch (low risk, but low reward) and prerender (high reward, but higher risk if there are unintended consequences of running JavaScript before activating the page).As far as implementations/platforms go:
More details here:
Let me know if you have any questions!
Comment #5
anybodyYou might like adding Dries article: https://dri.es/speculation-rules-changed-my-mind-about-prefetching