guess-js/guess

🔮 Libraries & tools for enabling Machine Learning driven user-experiences on the web

What it solves

Guess.js addresses the difficulty web developers face when implementing predictive prefetching. Manually analyzing data to decide which pages to prefetch is time-consuming and often becomes outdated as user trends change. Additionally, implementing predictive analytics from scratch is complex for developers without data science or machine learning backgrounds.

How it works

Guess.js provides tools to automate the prefetching of resources based on user navigation patterns. It primarily leverages the Google Analytics API to determine the probability of which page a user will visit next from their current location.

For Webpack users, a dedicated plugin automates the setup, consuming data to cluster and generate bundles that can be prefetched. For non-Webpack users, it provides a workflow to integrate predictive fetching via client-side scripts. While it can function using simple GA reports, it is designed to be extensible to more advanced machine learning models (such as Markov models or deep neural networks in TensorFlow) to improve prediction accuracy.

Who it’s for

Web developers who want to improve perceived page load performance and user experience by implementing data-driven prefetching without needing deep expertise in machine learning or data analytics.

Highlights

  • Data-Driven Bundling: A Webpack plugin that automates the setup of predictive fetching.
  • GA Integration: Built-in modules to fetch structured navigation data from the Google Analytics API.
  • Flexible Prefetching: Supports various strategies including page-level prerendering and bundle-level prefetching of JavaScript chunks.
  • ML Ready: Designed to integrate with machine learning models to tailor experiences to individual users rather than just general patterns.

Related

  • Project
  • Project
  • Dispatch
  • Project
  • Project