An online tool for researchers to host and conduct customizable online experiments with users.
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 , otherwise check out our quick start or detailed set up instructions to try it out yourself!
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.
- 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
- (Re-) Start server
- If the server is already running: stop the server
- Make sure to take a look at the settings. For more details see backend configuration
- It is recommended to set
environment
toprod
to disable CORS
- It is recommended to set
- In your venv, run
pip install -r requirements.txt
(click here for more detailed instructions on setting up a virtual environment) - Start the server by executing
main.py
in the backend directory. For example from the root directory:python backend/main.py
- In your favorite browser (tested mainly with chrome) go to http://localhost:8080/ or https://localhost:8080/ depending on your projects configuration.
- For development, the React / frontend development server is recommended:
npm start