Skip to content

A PsychoJS-based experiment generator for the measuring various psychometric thresholds, e.g., crowding.

License

Notifications You must be signed in to change notification settings

EasyEyes/threshold

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EasyEyes Threshold

📖 Manual
📝 Parameter Glossary
🌏 Webapp (beta)

A PsychoJS-based experiment generator for the measuring various psychometric thresholds, e.g., crowding. Please visit https://easyeyes.app/experiment for more instructions.

Development

To clone this repo, use

git clone --recurse-submodules https://github.com/EasyEyes/threshold.git

Then, run the following for the initial setup

npm install
npm run build

To develop based on a specific experiment table, use

npm run examples [tableName].[xlsx] # you may also run `npm run examples` to prepare for all tables in your examples/tables folder
npm start # interactive selection of built examples
npm start -- --name=[tableName] # start hot-reload development for specific example

You need to rerun npm run examples [your table name] every time you edit the HTML or table files.

PsychoJS Version

We build EasyEyes Threshold with PsychoJS 2022.1.3.

Vite Build System (Experimental)

We've added Vite as an experimental alternative to Webpack for faster builds. The existing Webpack setup remains fully functional.

New Scripts

  • npm run vite-start - Start Vite development server
  • npm run vite-build - Build with Vite
  • npm run vite-preview - Preview Vite production build
  • npm run compare-builds - Compare Webpack vs Vite build performance (requires Rust)

Performance Comparison

To compare build performance between Webpack and Vite:

npm run compare-builds

This Rust-based tool runs each build 3 times and provides detailed statistics including:

  • Average build times
  • Standard deviation
  • Statistical significance
  • Percentage improvement

Notes

  • Vite configuration is in vite.config.js
  • Both build systems output to the same js/ directory
  • The Rust comparison tool requires Rust to be installed
  • Existing Webpack scripts (npm start, npm run build) remain unchanged

About

A PsychoJS-based experiment generator for the measuring various psychometric thresholds, e.g., crowding.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 18