TUMFARSynchrony / experimental-hub

An online tool for researchers to host and conduct customizable online experiments with users.
GNU General Public License v3.0
29 stars 4 forks source link

Experimental Hub

An online tool for researchers to host and conduct customizable online experiments with users.

Quick Demo Exp Hub

As a part of our vision for the experimental hub, we hope to make at home video conferencing studies have more laboratory control through the experimenter and participant workflows we have designed in allowing safegaurds in the workflow and a flexible UI (e.g. custom participant video screen position, size, and order, limiting participant exposure pre-experiment to others in the call or seeing themselves with a fitler too early, etc.). We also hope that the experimental templates and filters our platform uses helps the egological validity and repeatability of both HCI and psychology experiments and encourages sharing of anonymized data of the experiment. Finally, because our expirmental hub is self hosted, there should be more control over the data privacy of where potentially sensitive video and audio data is being stored.

For in detail motivation about the Experimental hub see our introduciton to the Experimental Hub, read our UbiComp'23 poster paper, or checkout our Medium blog. Otherwise get started with our quick start or detailed set up instructions to try it out yourself!

Setup

Building & Quick Starting Guide

In case you want to build the frontend yourself, follow the steps in this section.

For the general setup and prerequisites, please take a look at the frontend and backend READMEs. Continue with the steps bellow after both the frontend and backend are set up.

  1. Build frontend
    • Skip this step if there where no changes to the frontend since the last build process
    • Go to the frontend directory: cd frontend
    • If this is your first time running the experimental hub run: npm install
    • Build the frontend: npm run build. Make sure the build process finishes without any errors
  2. (Re-) Start server
  3. In your favorite browser (tested mainly with chrome) go to http://localhost:8080/ or https://localhost:8080/ depending on your projects configuration.

Notes