https://github.com/jfo222/memorytasks
Limited hold, Dual N-back and Backwards working memory tasks.
https://github.com/jfo222/memorytasks
desktop-app dual-n-back limited-hold linux-app memory-game n-back reverse-memory-span working-memory
Last synced: 15 days ago
JSON representation
Limited hold, Dual N-back and Backwards working memory tasks.
- Host: GitHub
- URL: https://github.com/jfo222/memorytasks
- Owner: jfo222
- License: other
- Created: 2026-05-15T01:09:19.000Z (18 days ago)
- Default Branch: main
- Last Pushed: 2026-05-15T01:10:12.000Z (18 days ago)
- Last Synced: 2026-05-15T03:21:47.276Z (18 days ago)
- Topics: desktop-app, dual-n-back, limited-hold, linux-app, memory-game, n-back, reverse-memory-span, working-memory
- Language: HTML
- Homepage:
- Size: 101 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Memory Tasks
A set of working memory tasks in a triad of standalone desktop applications.
Built with a Rust backend and an HTML, CSS, and JavaScript frontend.
----
Looking for the web apps instead?
----
### 1. Limited Hold
Based on S. Inoue and T. Matsuzawa's 2007 documentation.
| Config | Description | Value |
| ------ | ------ | ------ |
| alphanumeric | Sets characters of stimuli | "alpha", "numeric" |
| limitMax/limitMin | Stimuli range | Integer |
| nightMode | Enables night mode | Boolean |
| randomize arrow | Randomized within the arc span | Boolean |
| randomize char | Randomized instead of sequential | Boolean |
| reverse arrow/char | Reverses the order | Boolean, "alternate" |
| sound | Enables sound | Boolean |
| time 0/1/2 | Stimuli hold time | Milliseconds, 0 = unlimited |
----
### 2. Dual N-back
Based on S. Jaeggi and M. Buschkuehl's 2008 documentation.
| Map | Key |
| ------ | :----: |
| Visual target | A |
| Aural target | L |
| Buttons on/off | B |
| Run block/end task | Space |
QWERTY keyboard layout.
----
| Config | Description | Value |
| ------ | ------ | ------ |
| aural | Auditory stimuli | Array (8 unique consonants) |
| autoDown/autoUp (session) | Mistakes > or < to decrement/increment N | Integer |
| base | Length of sequence equals base + N | Integer |
| blocks (session) | Number of blocks in a session | Integer |
| buttons | Enables onscreen buttons | Boolean |
| limitMax/limitMin | N-back range | Integer |
| nightMode | Enables night mode | Boolean |
| overlap | Number of simultaneous targets | Integer |
| overlapCtrl | Enables controlled overlap | Boolean |
| sound | Enables sound | Boolean |
| targets | Number of targets (single stream) | Integer |
| timeRate/timeStimulus | Sets time | Milliseconds |
| piper\_model | Path to voice model | String |
| piper\_sample\_rate | Voice model sample rate | String |
----
### 3. Backwards
A backwards memory span task.
| Config | Description | Value |
| ------ | ------ | ------ |
| alphanumeric | Sets characters of stimuli | Boolean |
| autoDown/autoUp | Successive rounds to set level | Integer |
| columns | Number of panel columns | Integer |
| limitMin | Minimum sequence length | Integer |
| nightMode | Enables night mode | Boolean |
| qty char/color | Number of stimuli | Integer |
| sound | Enables sound | Boolean |
| timeRate/timeStimulus | Sets time | Milliseconds |
| piper\_model | Path to voice model | String |
| piper\_sample\_rate | Voice model sample rate | String |
----
### How-to
Download the binaries and launch.
Keep the optional `config.json` in the same folder to override default values.
----
Dependencies, (Ubuntu 26.04 LTS+):
libwebkit2gtk-4.1-0
speech-dispatcher
espeak-ng
`sudo apt install libwebkit2gtk-4.1-0 speech-dispatcher espeak-ng`
To install [Piper](https://github.com/OHF-Voice/piper1-gpl) TTS:
```
sudo apt install pipx
pipx ensurepath
pipx install piper-tts
```
Voice models can be downloaded at:
----
Build dependencies:
libwebkit2gtk-4.1-dev
libasound2-dev
`sudo apt install libwebkit2gtk-4.1-dev libasound2-dev`
To build, you need Rust installed.
`cd` to directory and `cargo build --release`
----