Is there any tutorial or document explaining to create the hotjar like application ? Can anyone provide any insights in this? i want to create the application which analyses user behaviour.. like
- upto how much percentage of the page the user has scrolled
in which part of the DOM has the user clicked
and create report using heatmap.js for just one of my static site/page
Ive made the reports using the static datas and heatmaps Now i just want to track the user activities like scroll points, mouse hover/click points which can be differnet as for different screen sizes or devices... Is there any apis or js framework to help?
You won't find a single tutorial on this as you won't find a "Build a web search engine yourself" tutorials. Website user tracking is a very complex topic. Developing such a solution will require huge effort and investments. It would require expensive infrastructure as well (servers to collect data from the users and process them).
Additionaly there are some risks and problems to it as well. User privacy is a hot topic now because of questionable morality of user tracking. Web users awareness grows all the time and a lot of users choose to opt-out of web-tracking. The industry follows and expands users' possibilities to do that (both technical and legal).
If you still want to proceed - learn as much as you can about web user tracking. Search for "user tracking methods", "user tracking techniques", "web analitics" buzz-phrases.
Then when it comes to implementation:
In the browser (client-side)
On the server (the relatively easy part)
I did a very simple POC covering some of the above-mentioned client-side stuff some time ago. It's a simple script that watches DOM changes and user events (some of them) and logs them to the console when injected to a web page. In a full-blown solution this would be sent to the server for processing (instead of being written to the console).
These recorded events (DOM changes along with timestamps and user input/events) could be used to reliably reproduce what the users see in the browser window and how they interact with it.