Restructure plots project to consolidate shared functionality
A pull request for this has already been merged.
- #513 by @wbenoit26 — merged
- 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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