Originally I shared this post to Syndicode blog.
Things get smarter every day! How can data help in improving the user-perceived page load performance by using predictive analytics? Investigations and monitoring showed that a data-driven approach for predictive pre-fetching of web pages can optimize loading performance on the web and make it possible for the needed page to be already in the user's cache. Magic? Nope, just a common work of Minko Gechev and Addy Osmani! Today I'd like you to meet Guess.js - libraries and tools for enabling data-driven user-experience on the web!
Guess.js project is still in alpha phase. However, it already provides libraries and tools to simplify predictive data-analytics driven approaches for improving user-experiences on the web. You can get this data from any number of resources, ML models, Google Analytics etc. Guess.js was created to apply predictive data-analytics thinking to all modern sites and apps, including building libraries and tools for popular workflows.
What are the benefits of predictive data-analysis approach?
- With this approach, you're able to predict the next page or pages a user is likely to visit. By prefetching these pages you can improve perceived page load performance and user happiness as a result. You can predict needed pages and the bundles associated with this pages.
- Going further, you can predict the next piece of content a user is likely to search. Whether it is an article, product or video you'll be able to adjust or filter the user experience to account for this.
- Also, there is a chance to predict the types of widgets an individual user is likely to interact with more. Again, this data should be tailored for providing a more custom experience.
'By collaborating across different touch-points in the ecosystem where data-driven approaches could be easily applied, we hope to generalize common pieces of infrastructure to maximize their applicability in different tech stacks' - Guess.js creators say.
With Guess.js the user experience can be explored in:
Guess.js modules provide simplified API which aims to reduce the configuration overhead to the minimum. Can be tested with Angular projects or React projects. Currently, Guess.js supports only JSX or TSX with restricted syntax constructs for route definition.
Framework-based static sites
Guess.js plugin to Gatsby can reduce the amount of pre-fetch operations by considering the likelihood given link to be visited by the user. This minimizes the bandwidth consumption on devices using mobile data dramatically.
Static content sites
The backend fetches a Google Analytics report and builds a model which can be later used to determine which pages are likely to be visited next.
- Enterprise sites
As a result, your sites and web applications can be much faster and predictive to provide a better user experience. Automating and the positive impact on web performance are those reasons why I suggest you giving Guess.js a try!
Find out the problems Guess.js aimed to solve, relevant prediction models and risks on Guess.js GitHub page. Don't hesitate to give it a star if you want to!
Find more neat repositories in my weekly JS digest! These bunch of the newest solutions will make your developer's work smarter and simpler!