Visual Search
A classic visual search task. Participants find and tap the letter L among rotated Ts as quickly as they can. Target color (red or black), whether one distractor is red, and set size (10 or 20 distractors) vary across trials, and each response is followed by accuracy and speed feedback.
- Duration: ~120 s
- Source: Re-implementation of a PsychoPy/PsychoJS visual search experiment
- Launch URL: https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/
Example URL commands
# Plain launch (debug mode: results shown on-screen)
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/
# Suppress the completion screen
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/?show_end_screen=false
# With camera recording
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/?webcam=1
# With eye tracking
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/?webgazer=1
# Customized assessment parameters (values shown are the defaults)
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/?number_of_trials=20&feedback_duration_ms=1000&iti_ms=500
# Production: submit results to your server
https://andreifoldes.github.io/m2c2-assessments/assessments/visual-search/?token=<TOKEN>&callback_url=<CALLBACK_URL>
Session parameters
Handled by the launch wrapper (results submission and optional sensors), not by the assessment itself.
| Parameter | Type | Default | Description |
|---|---|---|---|
callback_url | string | — | URL to POST results to when the assessment ends. |
embed | string | — | Set to 1 for embedded mode (e.g. an ESMira PWA iframe): on completion, results are posted to the parent window via postMessage instead of an HTTP callback. |
light | string | — | Set to 1 or true to enable ambient light sensing (where the browser supports the AmbientLightSensor API). Participants see a consent prompt; lux readings are recorded during the task and exported at session end. |
pid | string | — | Optional participant identifier. Echoed verbatim into the results: top-level pid next to token in the callback POST, inside data, and in the embed-mode postMessage. Useful when the callback endpoint does not mint per-participant tokens, or to link multi-session designs (e.g. FNAME-Pairs learning vs. delayed) from the URL alone. |
show_end_screen | string | true | Set to false or 0 to suppress the green "Assessment Complete" screen after results are submitted. A Telegram WebView closes immediately instead of showing the confirmation. |
test | string | — | |
token | string | — | Authentication token for results submission. When absent (along with callback_url), the assessment runs in debug mode and displays results on-screen instead of submitting them. |
tutorial | string | true | Set to false or 0 to skip the tutorial screens (alias for the show_tutorial assessment parameter). |
webcam | string | — | Set to 1 or true to enable optional camera recording. Participants see a consent prompt; if they accept, the front camera records and the video is saved locally to their device at session end. |
webgazer | string | — | Set to 1 or true to enable browser-based eye tracking via WebGazer.js. Participants see a consent prompt, then a 5-point gaze calibration. Gaze coordinates are recorded throughout the task and exported as a CSV file at session end. Can be combined with webcam=1. |
Assessment parameters
Parameters marked URL can be set as URL query parameters; the rest are fixed deployment defaults.
| Parameter | Type | Default | URL | Description |
|---|---|---|---|---|
number_of_trials | integer | 20 | ✅ | Number of search trials. Conditions are drawn in equal proportion and shuffled. |
feedback_duration_ms | number | 1000 | ✅ | Duration of the post-response feedback in ms |
iti_ms | number | 500 | ✅ | Blank inter-trial interval in ms |
show_feedback | boolean | true | — | Whether to show accuracy and speed feedback after each trial |
show_quit_button | boolean | false | — | Whether to show a quit button |
show_tutorial | boolean | true | ✅ | Whether to show the instruction screen before the task |
Generated from assessments/visual-search/visual-search.js and assessments/visual-search/index.js. Do not edit by hand.