tl;dr: Raise your hand in real life to raise your hand on Google Meet.
RHTRH is a Google Chrome extension to add real-time hand raise tracking to Google Meet through Artifical Intelligence / Computer Vision. It supports all Chromium browsers (inc. Google Chrome, Microsoft Edge, Chromium, etc.). RHTRH is optimized to monitor its performance while running and should deliver an enjoyable experience on all systems.
You can download the latest version of the extension for free from the Chrome Extensions Web Store. See below for a guide on how to install on Microsoft Edge or how to compile it for yourself. The extension currently works on Google Meet only for accounts that have the "Raise hand" feature enabled (Google Workspace). In a future version, we may add a custom solution to bring this feature to all accounts.
If you feel generous, please consider donating.
Download the latest version of the extension from the Chrome Extensions Web Store.
- Click the Settings (threed-dotted) button in the top-right.
- Select the Extensions option.
- Turn on the
Allow extensions from other stores
toggle switch. - Click the
Allow
button. - Download the latest version of the extension from the Chrome Extensions Web Store.
- Clone the repo from Github
git clone https://github.com/signofactory/rhth
- Install dependencies using npm / yarn:
yarn install
- Run bundling script to build the source code from src folder to dist folder
yarn build
or use the watch script to have webpack look over your shoulders while making edits to your files. Changes to any js file will be immediately transpiled to the dist
folder, while changed to html / json files have to be carried manually (stop the watch script and run it again for convenience):
yarn watch
-
Load the packed / unpacked extension from the
dist
folder onto your browser of choice. On Chrome, you can do so by going into the extension page, enablingDeveloper Mode
and clicking ontoLoad unpacked
. -
Have fun!
The extension is enabled by default and automatically optimized to minimize impact on performance / battery life. There are simple settings to choose operating mode. See below:
After the extension has been successfully installed, a new hand button will appear in the top-right bar on every Google Meet meeting. Clicking the hand icon allows access to the settings for the extension. There are currently to working modes supported: school and meeting. See below for instructions.
School mode is designed to mimic the experience that people have at school / university when they want to ask a quesion:
- Raise a hand to "Raise hand" on Google Meet
- Lower your hand to "Lower hand" on Google Meet
Meeting mode is designed for people who want to keep taking their notes while waiting for their turn to speak and ask questions:
- Raise a hand to "Raise hand" on Google Meet
- Raise a hand again to "Lower hand" on Google Meet
- Rinse and repeat
- The extension currently slows down significantly the action of entering a meeting (due to the predictive model being loaded while Google Meet is also doing its stuff). Once the model is loaded and our optimizations kick-in, performance should go back to normal — we are working on a solution to lazy load the model and smoothen this behaviour
- The extension is enabled on all meetings, even when there is no "Raise hand" button. We'll fix it soon.
- The extension doesn't work on M1 powered MacBooks / Mac Minis (due to TensorFlow's CPU backend compatibility issues ATM)
The extensions would not have been possible without these contributions from the Open Source community:
- Google's Tensorflow and the tfjs team
- fingerpose library from @andypotato
- google-meet-grid-view extension from @fugiman for inpiration on the user interface
RHTRH wouldn't have been possible without many amazing projects from the open-source community. While we do not have a formal contribution system in place, anyone willing to contribute is free to open a Pull Request for us to review. Suggestions to improve the code, add new feature, and increase performance are all welcome.
This script does not track any user data.