Skip to content

Issue A4: Usability Wrapper — One-Liner Pipeline #12

@Ramdam17

Description

@Ramdam17

Description:

Create a high-level wrapper function that runs a standard hyperscanning pipeline in one line.

Context:
Currently, users must call multiple functions in sequence. A wrapper would lower the barrier for beginners while experts can still use individual functions.

Proposed API:

from hypyp import easy

# One-liner for common workflow
results = easy.run_pipeline(
    data=[epo1, epo2],           # Two participants' epochs
    metrics=['plv', 'ccorr'],     # Which metrics to compute
    freq_bands={'alpha': (8, 12), 'beta': (13, 30)},
    stats='permutation',          # Optional: run stats
    plot=True                     # Optional: generate figures
)

# Results object with easy access
print(results.plv.alpha)          # PLV in alpha band
print(results.stats.significant)  # Significant connections
results.plot.save('figures/')     # Save all figures

Tasks:

  • Design API (get feedback before implementing)
  • Implement easy.run_pipeline() function
  • Create results container class with clear accessors
  • Add sensible defaults for common use cases
  • Write comprehensive docstring with examples
  • Add unit tests
  • Create tutorial section showing wrapper usage

Acceptance Criteria:

  • Function runs complete pipeline with minimal arguments
  • Results are easily accessible (no digging through nested dicts)
  • Defaults work for common EEG hyperscanning analysis
  • Docstring with at least 3 usage examples
  • Unit tests cover main use cases
  • Tutorial demonstrates wrapper vs. manual approach

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions