Portfolio

EEG / BCI software ecosystem

Most of these projects grew out of the same practical problem: EEG/BCI models are easy to train on one session and hard to trust on the next one. I started by building tools for stable signal representations, then added methods for aligning shifted sessions, then built benchmark runners and dashboards to see when adaptation helps and when recalibration is still needed. The simulation and visualization tools support the same story from the other side: stress-test the geometry, explain the methods, and make the failure modes easier to inspect.

When a tool has both R and Python versions, I group it here by the problem it solves and leave implementation details to the project pages.

01

Build stable representations

Whitening and feature-extraction tools that make EEG trials comparable before classification or transfer.

R Package: eegwhiten cover

EEG whitening and alignment package

R Package: eegwhiten

R package for whitening EEG channels or feature matrices with reusable models, diagnostics, cross-session recentering, and Riemannian tangent-space helpers.

Milestone: Mar 2022

R Package: BCIFeatR cover

EEG feature extraction package

R Package: BCIFeatR

R toolkit for train/test-safe EEG feature extraction across spatial-filter, covariance, spectral, dynamical, and avalanche feature families.

Milestone: May 2023

02

Adapt across sessions

Domain-adaptation libraries and experiment runners for moving from one session to another without pretending the data are stationary.

R Package: DA4BCI cover

Domain adaptation package

R Package: DA4BCI

R toolkit for aligning EEG feature distributions across sessions or subjects and evaluating source-target shift before and after adaptation.

Milestone: Nov 2022

Python Package: CrossDA cover

Cross-session DA experiment runner

Python Package: CrossDA

Python package and CLI for running cross-session EEG domain-adaptation experiments across multiple source-session utilization strategies.

Milestone: Apr 2025

03

Compare and diagnose results

Dashboards that turn cross-session benchmark output into source-selection, adaptation, and recalibration decisions.

Web App: MSDA-Bench cover

Multi-source DA benchmark dashboard

Web App: MSDA-Bench

Interactive benchmark dashboard for comparing source-session utilization strategies across MAP, DWP, MMP, and BDP pipelines.

Milestone: Oct 2025

Web App: ShiftDx cover

Drift diagnostics dashboard

Web App: ShiftDx

Streamlit dashboard for MI-EEG drift diagnostics across multiple shift metrics, DA methods, feature families, and fixed-reference monitoring protocols.

Milestone: Mar 2026

04

Stress-test and explain methods

Simulation and visual-explanation tools for checking covariance geometry, augmentation safety, and method intuition.

R Package: TensorEEG cover

EEG simulation and augmentation audit package

R Package: TensorEEG

R package for synthetic EEG tensor simulation, SPD covariance augmentation, fidelity auditing, and manifest-based replay.

Milestone: Dec 2023

Python Package: TensorEEG-py cover

Python simulation and augmentation audit package

Python Package: TensorEEG-py

Python package mirroring TensorEEG's simulation, augmentation, SPD geometry, fidelity audit, and manifest replay APIs.

Milestone: Nov 2024

Web App: ShiftLens cover

Interactive DA method explorer

Web App: ShiftLens

Static browser app for teaching and inspecting domain-adaptation geometry with 2-D toy data, method animations, metrics, and export tools.

Milestone: Jun 2026

+

Other technical builds

Selected applied or exploratory projects outside the main EEG/BCI software chain.

Pseudo-online BCI desktop app

Desktop App: NeuroStream

Desktop app for sample-paced BCI replay with four motor-imagery pipelines, Euclidean Alignment, and live inference visualization.