
jsPsych
The open-source JavaScript standard for millisecond-accurate behavioral research and cognitive data collection.

The open-source study builder for high-precision behavioral research and online experiments.

lab.js is a premier open-source framework designed for the construction of complex behavioral and psychological experiments within a web-native environment. By 2026, it has solidified its position as the leading alternative to proprietary solutions like Qualtrics or E-Prime, particularly for researchers requiring sub-millisecond timing precision and modular trial structures. The architecture is built on a dual-layer system: a high-level visual builder for rapid prototyping and a robust ES6-based core library for granular control. This modularity allows for the seamless integration of custom JavaScript, enabling researchers to build dynamic stimuli, adaptive testing logic, and complex nested experimental designs. Operating entirely client-side, it ensures high performance across desktop and mobile devices. Its 2026 market position is defined by its commitment to Open Science, facilitating reproducible research through standardized JSON-based study definitions. It integrates natively with JATOS for backend management and data storage, providing a secure, GDPR-compliant infrastructure for large-scale longitudinal studies and cross-institutional collaboration.
lab.
Explore all tools that specialize in reaction time measurement. This domain focus ensures lab.js delivers optimized results for this specific requirement.
Explore all tools that specialize in design experiments. This domain focus ensures lab.js delivers optimized results for this specific requirement.
Uses requestAnimationFrame and high-resolution timestamps (Performance.now()) for stimulus presentation and response logging.
A drag-and-drop interface for creating complex branching, looping, and nested trial structures without writing code.
Experimental units are modular components that can be cloned, exported, and reused across different studies.
Experiments run entirely in the browser, allowing for offline data collection and low-latency interaction.
Allows for the programmatic creation of stimuli using HTML5 Canvas or SVG based on participant performance.
Studies are saved as readable JSON files, making them version-controllable via Git.
A modular API allows for the creation of custom plugins for hardware integration (e.g., eye trackers).
Access the lab.js online builder or install the library via npm for local development.
Initialize a new study tree to define the hierarchical structure of your experiment.
Define global variables and state management for data tracking across trials.
Create stimuli components using the visual editor (HTML/CSS/Canvas).
Implement trial logic, including randomization and counterbalancing strategies.
Inject custom JavaScript code snippets for adaptive behavior or external API calls.
Configure data recording parameters to specify which variables are saved to the database.
Use the built-in debugger to verify timing precision and logic flow.
Export the study as a static HTML/JS package or upload directly to a JATOS server.
Pilot the study across different browsers to ensure cross-platform compatibility.
All Set
Ready to go
Verified feedback from other users.
"Highly praised for its flexibility and open-source nature, though noted for a moderate learning curve for non-coders."
Post questions, share tips, and help other users.

The open-source JavaScript standard for millisecond-accurate behavioral research and cognitive data collection.

Zymergen was a bio/tech company that engineered microbes for various industrial purposes.

Uncover and optimize your SaaS investment.

A powerful shell designed for interactive use and scripting.

Zopto was a LinkedIn automation tool designed to generate leads, but it is now defunct.

AI-powered collaboration platform that reimagines teamwork through unified communication and workspace automation.

Maximize your Amazon sales and grow your business with powerful, accurate data and AI-driven listing optimization.