📖 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.
To clone this repo, use
git clone --recurse-submodules https://github.com/EasyEyes/threshold.gitThen, run the following for the initial setup
npm install
npm run buildTo 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 exampleYou need to rerun npm run examples [your table name] every time you edit the HTML or table files.
We build EasyEyes Threshold with PsychoJS 2022.1.3.
We've added Vite as an experimental alternative to Webpack for faster builds. The existing Webpack setup remains fully functional.
npm run vite-start- Start Vite development servernpm run vite-build- Build with Vitenpm run vite-preview- Preview Vite production buildnpm run compare-builds- Compare Webpack vs Vite build performance (requires Rust)
To compare build performance between Webpack and Vite:
npm run compare-buildsThis Rust-based tool runs each build 3 times and provides detailed statistics including:
- Average build times
- Standard deviation
- Statistical significance
- Percentage improvement
- 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