Concepts

From lab.js to Open Lab.

Build your experiment in lab.js, upload it to Open Lab, and it becomes a Task in your account — reusable, with a revision history, and ready to add to any Study.

Build → Upload → Attach

Build01

Design in lab.js

Visual builder, arrange screens, trials, randomisation. Preview locally as you go.

builder.open-lab.online
fixation
trial
debrief
Visual builder
Upload02

Send to Open Lab

Choose Upload to Open Lab… in the builder's save menu, then log in on Open Lab within 24 hours. Each upload creates a new Task.

⚡ Upload to Open Lab…→→{}stroop-task.json
One click
Attach03

Use in a Study

In the Study Builder, add a Lab.js Task component and pick the Task under My tasks. Reuse it across many Studies.

{}stroop-taskrevision 3 · current
{}stroop-taskrevision 2
{}stroop-taskrevision 1
Reusable
Task library

Each upload becomes a Task, named after the study title in lab.js. Saving from Edit in lab.js builder adds a revision to the same Task. Many Studies can use the same Task — upload once, run anywhere.

Where things live

lab.js builder · builder.open-lab.online
Task library · your account
Study builder · add to a Study
Reusable

Upload once, run anywhere.

One upload, many Studies — same paradigm across samples, languages, or replications.

  • Add the same Task to any number of Studies
  • Set task parameters per Study without touching the Task
  • Tasks are scoped to your account, not a single Project
Revisions

Every saved file is a revision.

Each participant session records the Task revision it ran, so analyses can be matched to the file participants saw.

  • Studies run the Task's current revision
  • The Study Builder warns when earlier sessions ran an older revision
  • Download or restore any earlier revision from the Task's history
Round-trip

Load back into the builder.

Open any of your Tasks in the lab.js builder straight from Open Lab — no copy-pasting JSON or file juggling.

  • Click Edit in lab.js builder on the Task
  • Save to Open Lab updates that Task and adds a new revision
  • A fresh upload from the builder creates a new Task instead