This project is not covered by Drupal’s security advisory policy.
RefreshLess makes navigating your web site faster by only loading the parts that change between pages. Uses the ideas behind Turbolinks technique (pioneered by Rails). But it goes further: thanks to Drupal 8's architecture, we're able to automatically figure out which parts of a page change. So, we only need to send the parts of the page that actually change.
When clicking a link that points to a URL within the Drupal site, we then keep the current page, but just swap the parts that change between the current page and the next. This means less data on the wire, and — most importantly — less work for the browser.
How does this work?
- Drupal 8 already has all the necessary cacheability metadata, and in particular cache contexts, which describe how each part of the page varies.
- The RefreshLess module uses the cache contexts associated with a particular region to determine whether this region changes compared to the page the user is currently on. It only sends the updated markup for that region if it actually changes.
- This results in hugely improved front-end/perceived performance.
So, unlike Turbolinks in Rails, using RefreshLess requires zero code and configuration.
Combined with the BigPipe module (which offers significant improvements for the initial page load), this should make just about any Drupal site feel significantly faster.
Don't forget to apply the included core patch! We're working on making this unnecessary, but for now it is required. See.
- Maintenance status: Minimally maintained
- Development status: Under active development
- Reported installs: 36 sites currently report using this module. View usage statistics.
- Downloads: 4,710
- Last modified: 10 April 2017
- This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.