npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@capitalhitelhaz/webgazer

v1.7.2

Published

## TL;DR

Downloads

16

Readme

WebGazer.js

TL;DR

npm install
grunt
# Bump version number in package.json
npm publish --access public

WebGazer.js is an eye tracking library that uses common webcams to infer the eye-gaze locations of web visitors on a page in real time. The eye tracking model it contains self-calibrates by watching web visitors interact with the web page and trains a mapping between the features of the eye and positions on the screen. WebGazer.js is written entirely in JavaScript and with only a few lines of code can be integrated in any website that wishes to better understand their visitors and transform their user experience. WebGazer.js runs entirely in the client browser, so no video data needs to be sent to a server. WebGazer.js can run only if the user consents in giving access to their webcam.

Features

  • Real time gaze prediction on most major browsers
  • No special hardware - WebGazer.js uses common webcams
  • Self-calibration from clicks and cursor movements
  • Easy to integrate with a few lines of JavaScript
  • Swappable components for eye detection
  • Multiple gaze prediction models
  • Useful video feedback to user

Build the repository

If you want to build the repository from source follow these instructions:

# Ensure NodeJS is downloaded: https://nodejs.org/en/download/
# Install grunt-cli if not installed (this may require you to use `sudo` or run the console as Administrator)
npm install -g grunt-cli
git clone https://github.com/brownhci/WebGazer.git
npm install
# Run grunt to build the webgazer.js and webgazer.min.js file in the build directory
grunt

To use the webgazer script in the head of an HTML file add the async tag to ensure the clmtrackr does not collapse to a slower version

Examples

Examples of how WebGazer.js works can be found here.

How to run the Example HTML files

Within the /www directory there are two example HTML files:

  • calibration.html: This example includes additional user feedback, such as a 9-point calibration sequence, accuracy measurements and an informative help module.
  • collision.html: This example contains a game where the user can move an orange ball with their eyes, which in turn collides with blue balls.

To run the example files as a server:

# Clone the repository and download NodeJS using the steps listed above
# Move into the www directory and download the additional dependencies
cd www
npm install
# Run the webpage index.html as a server
browser-sync start --server --files "*"

Browser Support

The following browsers support WebGazer.js:

  • Google Chrome
  • Microsoft Edge
  • Mozilla Firefox
  • Opera
  • Safari

Your browser needs to support the getUserMedia API as seen here.

Publications

@inproceedings{papoutsaki2016webgazer,
author     = {Alexandra Papoutsaki and Patsorn Sangkloy and James Laskey and Nediyana Daskalova and Jeff Huang and James Hays},
title      = {{WebGazer}: Scalable Webcam Eye Tracking Using User Interactions},
booktitle  = {Proceedings of the 25th International Joint Conference on Artificial Intelligence (IJCAI-16)},
pages      = {3839--3845},
year       = {2016},
organization={AAAI}
}

@inproceedings{papoutsaki2017searchgazer,
author     = {Alexandra Papoutsaki and James Laskey and Jeff Huang},
title      = {SearchGazer: Webcam Eye Tracking for Remote Studies of Web Search},
booktitle  = {Proceedings of the ACM SIGIR Conference on Human Information Interaction \& 	Retrieval (CHIIR)},
year       = {2017},
organization={ACM}
}

Who We Are

  • Alexandra Papoutsaki
  • James Laskey
  • Aaron Gokaslan
  • Yuze He
  • Jeff Huang

Other Collaborators

  • Ida De Smet - Software engineering student at the University of Auckland
  • Elizabeth Stevenson - Software engineering student at the University of Auckland
  • Jack Wong - Software engineering student at the University of Auckland

Acknowledgements

Webgazer is developed based on the research that is done by Brown University. The work of the calibration example file was developed in the context of a course project with the aim to improve the feedback of WebGazer. It was proposed by Dr. Gerald Weber and his team Dr. Clemens Zeidler and Kai-Cheung Leung.

This research is supported by NSF grants IIS-1464061, IIS-1552663, and the Brown University Salomon Award.

License

Copyright (C) 2018 Brown HCI Group

Licensed under GPLv3. Companies have the option to license WebGazer.js under LGPLv3 while their valuation is under $10,000,000.