Experimental features
Notice
While these experimental browser APIs are easy to enable, technical knowledge is required to modify the code.
Please read the linked Resources & Articles for each experiment before asking question in Slack.
Warning
Because of the reliance on experimental browser APIs, the Hyvä implementations may change or be removed entirely in the future without notice.
Speculation Rules
Stable since Hyvä 1.4.0
Speculation rules were added as an experimental feature in Hyvä 1.3.7. Since release 1.4.0 they are no longer experimental and are enabled by default. This documentation will remain for a while in case sites using older Hyvä versions can refer to it.
The Speculation Rules API empowers proactive resource loading for anticipated user journeys.
By prefetching or prerendering potential next pages, you can significantly improve perceived load times and enhance the user experience.
How to Enable
Navigate to Hyvä Themes > Experimental > Experimental Features and enable "Enable Preloading Speculation Rules".
Resources & Articles
- Caniuse Support: Caniuse Speculation Rules
- Developer Documentation: Chrome Dev - Preload Pages
- Blog Post: Nitropack Blog - Speculation Rules API
View Transitions
Stable since Hyvä 1.4.0
View Transitions were added as an experimental feature in Hyvä 1.3.10. Since release 1.4.0 they are no longer experimental and are enabled by default.
This documentation will remain for a while in case sites using older Hyvä versions can refer to it.
The View Transitions API v2, lets you implement smooth view transitions for same-origin, cross-document navigations.
This allows the creation of smooth transitions between views on your website to enhance the user experience.
For advanced control and perceived speed improvements with page animations, consider using the Speculation Rules API in conjunction with View Transitions API v2.
How to Enable
Navigate to Hyvä Themes > Experimental > Experimental Features and enable "Enable View Transitions".
Resources & Articles
- Caniuse Support: Caniuse View Transition
- Developer Documentation: Chrome Dev - View Transitions
- Blog Post: Chrome Blog - View Transitions