avoke

A toolbox for web-based experiments, including audiovisual trials and webcam capture. View demo here:

https://github.com/beatlab-mcmaster/avoke

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.5%) to scientific vocabulary

Keywords

audiovisual eye-tracking-calibration javascript jspsych-plugin online-experiments open-source webcam-capture youtube-stream
Last synced: 6 months ago · JSON representation ·

Repository

A toolbox for web-based experiments, including audiovisual trials and webcam capture. View demo here:

Basic Info
Statistics
  • Stars: 3
  • Watchers: 0
  • Forks: 0
  • Open Issues: 3
  • Releases: 1
Topics
audiovisual eye-tracking-calibration javascript jspsych-plugin online-experiments open-source webcam-capture youtube-stream
Created 11 months ago · Last pushed 7 months ago
Metadata Files
Readme License Citation

README.md

"AVOKE: an open-source web-based experimentation toolbox for evoking audiovisual responses"

DOI

Contributors: Jackson Shi, Shreshth Saxena, Lauren Fink

Demo

Example trials for each plugin and extension.

View Demo

About the project

As web-based experiments become increasingly popular, the need for accessible, efficient research methods is greater than ever. However, current open-source frameworks sometimes lack detailed documentation, leaving many novice researchers struggling to create their experiments without significant time investments in learning the required technical skills. To meet this demand and further the capabilities of web-based experiments, we propose AVOKE—a diverse set of experimentation plugins and extensions built on top of jsPsych, an open-source JavaScript library for web-based behavioural experiments. AVOKE includes the code and documentation needed for novice researchers to easily integrate a variety of audiovisual stimuli in their experiments. Currently, AVOKE supports temporally-precise presentation of audiovisual stimuli (e.g., external media sources like YouTube, moving objects, etc.), as well as the collection of behavioural responses, like keypresses and video capture (e.g., for recording face videos or participants). All features have been developed according to jsPsych standards and validated through numerous tests developed in Jest—an established open-source JavaScript testing framework.

Upon finalization, we plan to integrate AVOKE into the official jsPsych library. As an open-source package, we hope for others to contribute to AVOKE as we continue to push the boundaries of web-based audiovisual experiments.

Documentation

The docs folder for each plugin or extension contains its own README file documenting usage. These docs are also linked below for easy reference:

extension-video-capture

plugin-audiovisual-response

plugin-stimulus-matrix-display

plugin-path-animation-display

plugin-video-capture-setup

plugin-youtube-response

Example Stimuli

AVOKE examples use standardized research databases to ensure reproducibility and scientific validity:

Face Stimuli

  • Chicago Face Database (CFD): A validated set of high-resolution face photographs with norming data
    • Citation: Ma, D. S., Correll, J., & Wittenbrink, B. (2015). The Chicago face database: A free stimulus set of faces and norming data. Behavior Research Methods, 47(4), 1122-1135.
    • Available at: https://www.chicagofacedb.org/

Visual Stimuli

  • The Unexpected Visitor: Oil on canvas painting by Ilya Rezpin, 1884–88.

    • Available through: www.ilyarepin.org/
  • International Affective Picture System (IAPS): Standardized emotional images for research

    • Citation: Lang, P. J., Bradley, M. M., & Cuthbert, B. N. (2008). International affective picture system (IAPS): Affective ratings of pictures and instruction manual. Technical Report A-8, University of Florida, Gainesville, FL.
    • Available through: https://csea.phhp.ufl.edu/media.html

Note: Researchers should obtain proper licenses for these databases before using them in their studies. The example file names provided in AVOKE are for demonstration purposes only.

Citation

This repository contains a CITATION.cff file. If you use this project, please cite it using the information in the file or use the "Cite this repository" button on GitHub for citation info.

Owner

  • Name: beatlab-mcmaster
  • Login: beatlab-mcmaster
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
title: >-
  AVOKE: an open-source web-based experimentation toolbox
  for evoking audiovisual responses
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Jackson
    family-names: Shi
    affiliation: McMaster University
    email: shir22@mcmaster.ca
  - given-names: Shreshth
    family-names: Saxena
    email: saxens17@mcmaster.ca
    affiliation: McMaster University
    orcid: 'https://orcid.org/0000-0002-9237-5461'
  - given-names: Lauren
    family-names: Fink
    email: finkl1@mcmaster.ca
    affiliation: McMaster University
    orcid: 'https://orcid.org/0000-0001-6699-750X'
identifiers:
  - type: url
    value: 'https://github.com/beatlab-mcmaster/AVOKE'
    description: GitHub repository
repository-code: 'https://github.com/beatlab-mcmaster/AVOKE'
url: 'https://beatlab-mcmaster.github.io/AVOKE/'
abstract: >-
  As web-based experiments become increasingly popular, the
  need for accessible, efficient research methods is greater
  than ever. However, current open-source frameworks
  sometimes lack detailed documentation, leaving many novice
  researchers struggling to create their experiments without
  significant time investments in learning the required
  technical skills. To meet this demand and further the
  capabilities of web-based experiments, we propose AVOKE—a
  diverse set of experimentation plugins and extensions
  built on top of jsPsych, an open-source JavaScript library
  for web-based behavioural experiments. AVOKE includes the
  code and documentation needed for novice researchers to
  easily integrate a variety of audiovisual stimuli in their
  experiments. Currently, AVOKE supports temporally-precise
  presentation of audiovisual stimuli (e.g., external media
  sources like YouTube, moving objects, etc.), as well as
  the collection of behavioural responses, like keypresses
  and video capture (e.g., for recording face videos or
  participants). All features have been developed according
  to jsPsych standards and validated through numerous tests
  developed in Jest—an established open-source JavaScript
  testing framework. Here, we elaborate on the
  implementation, data output structure, usage examples, and
  limitations of the different plugins and extensions
  comprising AVOKE. We also discuss potential future
  additions to enhance usability and diversify the feature
  set of AVOKE. Upon finalization, we hope to integrate
  AVOKE into the official jsPsych library. Overall, AVOKE
  fills a gap in existing web-based methods by enabling easy
  simultaneous presentation and recording of visuals and
  sound. As an open-source package, we hope for others to
  contribute to AVOKE as we continue to push the boundaries
  of web-based audiovisual experiments.
keywords:
  - web-based experiments
  - jsPsych
  - audiovisual
  - webcam
  - video-capture
  - calibration
  - eye-tracking
license: MIT

GitHub Events

Total
  • Create event: 3
  • Commit comment event: 5
  • Release event: 1
  • Issues event: 14
  • Watch event: 3
  • Issue comment event: 4
  • Member event: 1
  • Push event: 41
  • Pull request event: 4
Last Year
  • Create event: 3
  • Commit comment event: 5
  • Release event: 1
  • Issues event: 14
  • Watch event: 3
  • Issue comment event: 4
  • Member event: 1
  • Push event: 41
  • Pull request event: 4

Dependencies

extension-video-capture/package-lock.json npm
  • 902 dependencies
extension-video-capture/package.json npm
  • @jspsych/config ^3.1.0 development
  • jspsych ^8.0.0 development
plugin-audio-visual-button-response/package-lock.json npm
  • 900 dependencies
plugin-audio-visual-button-response/package.json npm
  • @babel/core ^7.26.9 development
  • @babel/preset-env ^7.26.9 development
  • @jspsych/config ^3.1.0 development
  • @jspsych/test-utils ^1.2.0 development
  • babel-jest ^29.7.0 development
  • jest ^29.7.0 development
  • jspsych ^8.2.1 development
plugin-fix-point-calibration/package-lock.json npm
  • 901 dependencies
plugin-fix-point-calibration/package.json npm
  • @jspsych/config ^3.1.0 development
  • jspsych ^8.0.0 development
plugin-smooth-pursuit-calibration/package-lock.json npm
  • 901 dependencies
plugin-smooth-pursuit-calibration/package.json npm
  • @jspsych/config ^3.1.0 development
  • jspsych ^8.0.0 development
plugin-video-capture-setup/package-lock.json npm
  • 901 dependencies
plugin-video-capture-setup/package.json npm
  • @jspsych/config ^3.1.0 development
  • jspsych ^8.0.0 development
plugin-youtube-button-response/package-lock.json npm
  • 913 dependencies
plugin-youtube-button-response/package.json npm
  • @jspsych/config ^1.3.3 development
  • jest ^29.7.0 development
  • jspsych ^8.0.0 development