An open API service indexing awesome lists of open source software.

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.

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`

----