ML4GW / ML4GW/aframe

Restructure plots project to consolidate shared functionality

Open
#470 0 comments 0 reactions 0 assignees View on GitHub

A pull request for this has already been merged.

  • #513 by @wbenoit26 — merged
plotting
Dominant language
Python
Stars
18
Forks
28
Avg merge
2d 2h
Merged PRs (30d)
7

Description

The legacy and vizapp subdirectories contain significant duplicated code: compute.py, tools.py/utils.py, gwtc3.py, normalize_path(), and VETO_DEFINER_FILE/GATE_PATHS are all fully or nearly identical across both. As new plot types are added, they risk being duplicated again under the current structure. Establish a shared module (e.g., plots/shared/ or plots/core/) for plot computation and utilities that both the CLI and vizapp import from. Rename legacy/ to reflect its role as the non-interactive CLI interface.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading merged pull request #513, since the restructuring work has already moved there. Review the legacy and vizapp copies of compute.py, tools.py/utils.py, gwtc3.py, normalize_path(), VETO_DEFINER_FILE, and GATE_PATHS, then verify that shared functionality is consolidated and both interfaces import it. Done means duplication is removed and legacy/ is renamed to reflect the non-interactive CLI role.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, data-visualization
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.