Skip to content

Releases: YG-paaleee/eegauge

v0.4.0 - renamed to EEGauge

21 Jun 08:57

Choose a tag to compare

EEGauge - new name, same project (formerly "BCI Dataset Cards").

Changed

  • Renamed the project to EEGauge. The GitHub repo, the Python package, and the CLI
    command are now eegauge (the old GitHub URL redirects).
  • Breaking: the command-line entry point changed from bcicards to eegauge, and
    the import package from bcicards to eegauge. Update any scripts or aliases.

Everything else is unchanged: honest dataset cards for public EEG/BCI datasets,
leakage-aware baselines, chance/significance, per-class metrics, and MOABB + EEGDash
metadata. 26 tests; CI green on Windows/Linux x Python 3.11/3.12. Not medical software.

v0.3.1 - EEGDash live-API fixes + real example

21 Jun 08:21

Choose a tag to compare

Patch release: validate the EEGDash backend against the live API and add a real example.

Fixed

  • Map EEGDash dataset metadata to the real API field names: read the DOI from
    dataset_doi (stripping the doi: prefix) and the citation from author_year.
  • Read BIDS entities (subject/session/task/run) whether nested under entities or
    flattened at the top level (the live find() records use the flat form).

Added

  • A real example from a live scan of ds002718 (Wakeman face-processing, 18 subjects):
    examples/ds002718.md and examples/ds002718.provenance.json.

Verified

  • 26 tests; ruff lint + format; CI green on Windows/Linux x Python 3.11/3.12.

v0.3.0 - EEGDash backend + evaluation provenance

21 Jun 02:32

Choose a tag to compare

v0.3.0 adds interoperability with EEGDash (the new OpenNeuro/NEMAR catalog) and an
evaluation-provenance record - complementary to EEGDash's discovery/loading, not a
duplicate of it.

Added

  • A pluggable DatasetBackend protocol. The existing MOABB logic is exposed via a
    moabb backend; a new eegdash backend reads EEGDash metadata and record listings
    with no signal download.
  • bcicards scan --backend eegdash <dataset-id> produces:
    • a metadata card (modalities, record/subject counts, license, DOI, BIDS validation
      status, and honest leakage risk factors - not a "RISK: HIGH" verdict), and
    • <id>.provenance.json (schema bci-evaluation-card/0.1) recording the exact
      cohort
      (subjects/sessions/records) so an evaluation can be reproduced.
  • New optional card fields, an [eegdash] install extra, and a design spec at
    docs/design/eegdash-backend.md.

Scope / honesty

  • The eegdash backend is metadata-only by design. No baseline is run for EEGDash
    datasets (they span many modalities/tasks); that is intentionally deferred.
  • EEGDash is new and its API may change; the backend is isolated with a small surface.

Quality

  • 24 tests (EEGDash client mocked - no network in CI); ruff lint + format enforced; CI
    green on Windows/Linux x Python 3.11/3.12. Still not medical software; no diagnostic claims.

v0.2.1 - review fixes (version reporting, docs)

20 Jun 06:17

Choose a tag to compare

Patch release fixing issues found in code review.

Fixed

  • bcicards --version reported the wrong version. The version is now single-sourced
    from bcicards.__version__, used by both the CLI and pyproject.toml (dynamic
    metadata), so it cannot drift again. Covered by a new --version smoke test.
  • Card plot paths use forward slashes, and the committed example card references its
    co-located images so they render on GitHub.
  • Replaced non-ASCII em dashes in the README and .gitignore with plain ASCII.

v0.2.0 — smarter, more honest cards + more datasets

20 Jun 05:56

Choose a tag to compare

v0.2.0 makes the dataset cards smarter and more honest, and broadens dataset coverage.

Added

  • Chance level + significance — cards report the chance level (1 / n_classes) and an
    approximate one-sided binomial test of whether the score beats chance (closes #1).
  • Per-class metrics + confusion matrix — per-class precision/recall/F1 table and a
    confusion-matrix plot, so a multi-class result is interpretable beyond overall accuracy.
  • License / DOI / citation surfaced in cards, read defensively from MOABB metadata (closes #2).
  • More motor-imagery datasetsBNCI2014_004, Zhou2016, Weibo2014 (closes #3).
  • .pre-commit-config.yaml (Ruff) and extended mocked tests for every new output.

Verified on BNCI2014_001 (subjects 1-3, leave-one-subject-out, seed 42)

  • Accuracy 0.429 vs a 0.25 chance level (binomial p < 0.001) — but the per-class breakdown
    shows the baseline barely detects the "feet" class, detail a single accuracy number hides.

Honesty note

The "above chance" check is an approximate binomial test versus the naive chance level, not
a permutation test — a sanity check, not proof. Still not medical software; no diagnostic claims.

v0.1.0 — first public release

20 Jun 04:30

Choose a tag to compare

First public release of BCI Dataset Cards — a small, beginner-friendly CLI for
inspecting public EEG/BCI datasets and running honest, reproducible baselines.

Features

  • bcicards scan — generate a Markdown dataset card from MOABB metadata.
  • bcicards benchmark — run a CSP + LDA motor-imagery baseline (fixed seed), save
    JSON results and a metrics plot.
  • Subject-aware (leave-one-subject-out) splitting for multiple subjects; stratified
    holdout for a single subject.
  • Explicit leakage warnings and "what this does not prove" sections in every card.

Verified on BNCI2014_001 (seed 42)

  • Within-subject (subject 1, stratified holdout): 0.751 accuracy
  • Cross-subject (subjects 1-3, leave-one-subject-out): 0.429 accuracy
  • Chance for 4 classes is 0.25 — the gap shows why the split method must be stated.

Quality

  • Mocked unit tests; CI on Windows + Linux, Python 3.11 + 3.12.
  • MIT licensed. Not medical software; no diagnostic or "mind reading" claims.