DDALAB is a native desktop application designed for performing Delay Differential Analysis (DDA) on neurophysiological time series.
It combines a modern, responsive user interface with a high-performance Rust analysis engine, delivering interactive, large-scale DDA workflows while ensuring that all data processing remains local to the user’s machine. Built with Tauri and React, DDALAB offers the ergonomics of a desktop app, the raw performance of compiled systems code, and the reproducibility required for scientific research.
- Download & Installation
- Community & Learning
- Key Features
- Architecture Overview
- Quick Start Guide
- Development
- Configuration & Data Storage
- Citation
- Acknowledgments
Prebuilt binaries are available for all major platforms via GitHub Releases.
Need help choosing the right file? Visit our Web Download Portal for a simplified, one-click selection for macOS, Windows, and Linux.
-
Download the latest
.dmgfrom the portal or releases page. -
Open the disk image and drag DDALAB into your
Applicationsfolder. -
Remove Quarantine Flag: macOS blocks unsigned applications by default. To allow the app to run, execute the following command in your terminal:
sudo xattr -r -d com.apple.quarantine /Applications/DDALAB.appNote: DDALAB is currently unsigned to avoid Apple Developer program constraints. All computation occurs locally; no data is transmitted externally.
-
Launch DDALAB from your Applications folder.
- Download the latest
.msiinstaller. - Run the installer and follow the setup wizard.
- Launch DDALAB from the Start menu.
- Download either the
.AppImageor.debpackage. - For AppImage:
chmod +x DDALAB-*.AppImage./DDALAB-*.AppImage - For Debian/Ubuntu:
sudo dpkg -i DDALAB-*.debsudo apt-get install -f
To stay informed about upcoming workshops, new computational tools, and latest research from our lab, we encourage you to periodically check the official DDALAB Website.
These events often cover advanced DDA workflows, data interpretation strategies, and hands-on training sessions that can help you get the most out of DDALAB.
- Native Desktop Experience: Fast, lightweight UI built with Tauri v2 and React.
- High-Performance Backend: Embedded Rust API with no external runtime dependencies.
- Broad Format Support: Native support for EDF, FIFF (
.fif), ASCII/TXT, CSV, BrainVision (.vhdr), and EEGLAB (.set). - BIDS Compatibility: Native handling of Brain Imaging Data Structure datasets.
- OpenNeuro & NEMAR Integration: Browse and download public datasets directly within the application.
- HPC Integration: Run large-scale computations on the Neuroscience Gateway (NSG) for free using your institutional credentials.
- Complete Data Privacy: Zero cloud dependency—all computation is local.
- Interactive Visualization: Real-time heatmaps and time-series plots powered by ECharts.
- Multi-Variant DDA: Support for both classic DDA and cross-time-series (CT) variants.
- Persistent History: Analyses and metadata are stored locally using SQLite.
DDALAB is designed as a modular, high-performance scientific application.
- Tauri v2: Native desktop framework.
- React + Next.js (TypeScript): Modern frontend architecture.
- Embedded Rust API: Axum-based local web server.
- SQLite: Persistent local storage for analysis history.
- ECharts: Interactive, GPU-accelerated plotting.
- TanStack Query: Efficient data fetching and caching.
For shared or institutional use, DDALAB supports optional network components:
- Sync Broker (Rust): A lightweight service for synchronizing analyses between machines.
- Network API Server: A centralized backend for multiple clients.
To start the broker:
cd packages/ddalab-broker
docker-compose up -d
- Launch DDALAB and select a local data directory.
- Load Data: Import local files, BIDS datasets, or download from OpenNeuro.
- Configure Parameters: Select Channels, Window length, Delay range, and DDA variant.
- Run Analysis: Execute the workflow and monitor progress.
- Visualize: Inspect results using the interactive heatmaps and time-series views.
- Export: Save results for downstream analysis.
- Rust ≥ 1.70 (rustup.rs)
- Node.js ≥ 18
- System Dependencies: Xcode Tools (macOS), MSVC (Windows), or
build-essential&libwebkit2gtk(Linux).
git clone https://github.com/sdraeger/DDALAB.git
cd DDALAB
bun install
cd packages/ddalab-tauri
bun run tauri:dev
bun run tauri build
Artifacts are generated in src-tauri/target/release/bundle/.
DDALAB stores all data locally in OS-specific directories:
- macOS:
~/Library/Application Support/ddalab/ - Windows:
%APPDATA%\ddalab\ - Linux:
~/.local/share/ddalab/
Key Files:
ddalab.db: SQLite database for history.config.json: User preferences.logs/: Diagnostic logs.
@software{draeger-ddalab-2025,
author = {Dr{\"a}ger, Simon and Lainscsek, Claudia and Sejnowski, Terrence J},
title = {DDALAB: Delay Differential Analysis Laboratory},
year = {2025},
url = {https://github.com/sdraeger/DDALAB}
}
Developed with support from NIH grant 1RF1MH132664-01.
Disclaimer: DDALAB is a research tool. Users are responsible for validating results against established standards for their specific applications.