Ascent Flash is a desktop flash-mental-math trainer. It shows a sequence of numbers at a configurable speed; you add/subtract them mentally and then enter the final sum.
- Fast, consistent flashing: timing is driven by the Rust backend (no JS timers)
- Configurable session settings: digits per number, flash duration, delay between numbers, count, optional negative numbers
- Audio cues: beep during flashes, applause/buzzer on validation (toggleable)
- Auto-repeat: optionally run multiple rounds with a countdown between sessions
- Theme + color schemes
Download the latest files from the GitHub Releases page for this repo. The release artifacts are named:
- Windows:
Ascent.Flash-Windows_setup.exe - macOS:
Ascent.Flash-macOS.dmg - Linux (Debian/Ubuntu):
Ascent.Flash-Linux_x86_64.deb - Linux (Fedora/RHEL/openSUSE):
Ascent.Flash-Linux-x86_64.rpm
- Download
Ascent.Flash-Windows_setup.exe. - Run the installer and launch “Ascent Flash”.
- Download
Ascent.Flash-macOS.dmg. - Open it and drag the app into Applications.
- If macOS blocks the first launch, use System Settings → Privacy & Security to allow it.
sudo dpkg -i Ascent.Flash-Linux_x86_64.deb
sudo apt-get -f installThen launch from your app menu.
Fedora/RHEL:
sudo dnf install ./Ascent.Flash-Linux-x86_64.rpmopenSUSE:
sudo zypper install ./Ascent.Flash-Linux-x86_64.rpmA browser-compatible build is also available in releases as Ascent.Flash-web.tar.gz. Extract and serve it with any HTTP server:
tar -xzf Ascent.Flash-web.tar.gz
cd Ascent.Flash-web
python3 -m http.server 8000 # or any web serverThen visit http://localhost:8000 in your browser.
bun installIn the project directory:
Runs the app in development mode.
Builds the frontend for production to the dist folder.
Builds only the WASM bridge (Rust backend compiled to WebAssembly).
Builds WASM bridge and the complete web bundle for browser deployment.
Run backend tests:
cd src-tauri
cargo test --locked -p FlashspanRun linter:
cd src-tauri
cargo clippy --locked --all-targets -- -D warnings