Skip to content

gorkang/jsPsychMaker

Repository files navigation

jsPsychMaker

Lifecycle: experimental Codecov test coverage

An set of tools to help create tasks and experimental protocols with jsPsych. It allows you quickly create online or offline protocols, randomizing participants between conditions making sure the groups are balanced, etc.

For details about the available tasks, you can check the Tareas jsPsychR googledoc (SPANISH!), or the jsPsychR-manual.

Installing

Install jsPsychMaker with: remotes::install_github("gorkang/jsPsychMaker")

Creating a protocol from existing tasks

To create a full protocol using already existing tasks:

  1. List available tasks: jsPsychMaker::list_available_tasks()

  2. Create protocol:

jsPsychMaker::create_protocol(canonical_tasks = c("AIM", "EAR", "IRI"),
                              folder_output = "~/Downloads/TEST/new_protocol", 
                              launch_browser = TRUE)

Check if there are new tasks available in a new version of the Github package:

jsPsychMaker::check_NEW_tasks_Github()

Creating a protocol with new tasks

You can create a protocol with new tasks using csv or excel files:

  1. Copy example tasks to local folder: jsPsychMaker::copy_example_tasks(destination_folder = "~/Downloads/TEST/example_tasks")

  2. Create protocol

jsPsychMaker::create_protocol(folder_tasks = "~/Downloads/TEST/example_tasks",
                              folder_output = "~/Downloads/TEST/new_protocol_999", 
                              launch_browser = TRUE)

See the jsPsychR manual, and "~/Downloads/TEST/example_tasks" for examples of how to create new tasks.

Adapting protocols

After creating a protocol, you can edit the config.js file to tweak the configuration. There is a Shiny app to help you create the protocol configuration, and the consent form.

Data preparation

Each of the tasks should have a sister script in jsPsychHelpeR to automatize the data preparation. With jsPsychHelpeR, using a simple function jsPsychHelpeR::run_initial_setup() you can setup a full project to automatically run the full data preparation pipeline for a jsPsychMaker protocol.

HELP with new tasks

If you need help creating a new task, create a new issue and fill the details of the task in the NEW jsPsychR tasks document.

More information

Check the jsPsychR-manual.