Skip to content

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

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions