A minimal Wisconsin Card Sorting Test implemented as a web app (React + TypeScript + Vite). Runs on desktop and iPad. Includes deterministic rule engine, trial-by-trial logging, and CSV export.
# From this folder
npm install
npm run dev
# To allow iPad on your LAN to access your PC dev server
# (replace with your PC's LAN IP; Vite prints it when using --host)
npm run dev -- --hostThen open the local URL shown in the terminal (e.g., http://192.168.1.x:5173) on your browser (PC or iPad).
- Rules: Color → Shape → Number, shift after 10 consecutive correct.
- Deck: All 64 combinations (4 colors × 4 shapes × 4 numbers), shuffled by seed.
- Error types: Perseverative vs non-perseverative; set-maintenance flag.
- Metrics in CSV: Trial index, correctness, error type, RT ms, rule in force, categories achieved, device info, seed, timestamps.
- Determinism: Seed captured per session; deck order is reproducible.
- Audio: Countdown beeps + optional correct/incorrect beeps (toggle "Son").
- Fill Participant ID (optional), Session ID, and Seed (auto-filled) and click "Démarrer".
- Tap/click one of the four key cards to respond.
- Feedback appears immediately (green/red).
- End condition: 6 categories completed or 128 trials (configurable).
- Click "Exporter CSV" to download trial-level data.
- In the header (gear icon), set "Max essais" to the number of trials you want for the session.
- 📖 MECHANICS_EN.md (English) — Detailed game mechanics, error classification, scoring, and post-processing formulas.
- 📖 MECHANICS_FR.md (Français) — Mécanique de jeu détaillée, classification des erreurs, calcul des scores et formules de post-traitement.
- React 18, TypeScript 5, Vite 5
- Fastest (Dev): Run locally with
npm run dev -- --host, then on iPad Safari openhttp://<PC_LAN_IP>:5173. Add to Home Screen for a full-screen experience. - Shareable: Deploy to GitHub Pages (or Vercel/Netlify), open the URL on iPad, then "Add to Home Screen".
- Kiosk: The app is configured as a PWA (Progressive Web App). Once added to the Home Screen, it launches without an address bar. Use iOS Guided Access to lock the iPad to the app during testing.
- Stoet, G. (2010). PsyToolkit - A software package for programming psychological experiments using Linux. Behavior Research Methods, 42(4), 1096-1104. https://doi.org/10.3758/BRM.42.4.1096
- Stoet, G. (2017). PsyToolkit: A novel web-based method for running online questionnaires and reaction-time experiments. Teaching of Psychology, 44(1), 24-31. https://doi.org/10.1177/0098628316677643