Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Bug report
description: Report something broken or unexpectedly behaving in this FeedBack repo.
title: "[Bug]: "
labels: ["bug", "needs triage"]
body:
- type: markdown
attributes:
value: |
Use this for reproducible failures. Include the smallest chart, plugin state, or workflow that shows the issue.
- type: textarea
id: summary
attributes:
label: Summary
description: What is happening?
placeholder: Describe the problem in one or two sentences.
validations:
required: true
- type: dropdown
id: area
attributes:
label: Area
options:
- screen.js / runtime behavior
- settings.html / settings persistence
- plugin reload or idempotency
- FeedBack core integration
- performance during playback
- documentation or packaging
validations:
required: true
- type: textarea
id: steps
attributes:
label: Steps to reproduce
description: What should someone do to see the issue?
placeholder: |
1. Open FeedBack...
2. Enable/open...
3. Play/import/change...
4. See...
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
validations:
required: true
- type: textarea
id: actual
attributes:
label: Actual behavior
validations:
required: true
- type: textarea
id: validation
attributes:
label: Useful validation
description: What should be checked when this is fixed?
placeholder: Reload the plugin, open it from FeedBack, test during playback, and check console errors.
- type: input
id: environment
attributes:
label: Environment
placeholder: Browser/OS, FeedBack version or commit, plugin version, Docker image, etc.
- type: textarea
id: notes
attributes:
label: Additional notes
description: Logs, screenshots, chart files, console output, or related PRs/issues.
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Roadmap or planning question
url: https://github.com/get-flashbacks/feedBack-plugin-splitscreen/issues
about: Use the relevant GitHub Project board for roadmap-level planning when available.
53 changes: 53 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Feature request
description: Suggest a new capability or workflow improvement.
title: "[Feature]: "
labels: ["enhancement", "needs triage"]
body:
- type: textarea
id: problem
attributes:
label: User problem or opportunity
description: What workflow gap does this solve?
placeholder: When practicing or authoring in FeedBack, I want...
validations:
required: true
- type: dropdown
id: area
attributes:
label: Area
options:
- screen.js / runtime behavior
- settings.html / settings persistence
- plugin reload or idempotency
- FeedBack core integration
- performance during playback
- documentation or packaging
validations:
required: true
- type: textarea
id: proposal
attributes:
label: Proposed behavior
description: What should change from the user's perspective?
validations:
required: true
- type: textarea
id: implementation_notes
attributes:
label: Implementation notes
description: Mention relevant files, plugin lifecycle concerns, API/data format changes, or performance risks.
- type: textarea
id: acceptance
attributes:
label: Acceptance criteria
description: What must be true for this to be considered done?
placeholder: |
- [ ] The user can...
- [ ] The change survives reload/reopen...
- [ ] No console/server errors appear...
validations:
required: true
- type: textarea
id: references
attributes:
label: References or mockups
55 changes: 55 additions & 0 deletions .github/ISSUE_TEMPLATE/task.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Task or improvement
description: Track cleanup, refactors, documentation, research, or non-bug work.
title: "[Task]: "
labels: ["task", "needs triage"]
body:
- type: textarea
id: goal
attributes:
label: Goal
description: What should be accomplished?
validations:
required: true
- type: dropdown
id: area
attributes:
label: Area
options:
- screen.js / runtime behavior
- settings.html / settings persistence
- plugin reload or idempotency
- FeedBack core integration
- performance during playback
- documentation or packaging
validations:
required: true
- type: textarea
id: scope
attributes:
label: Scope
description: What is included, and what is intentionally out of scope?
- type: textarea
id: checklist
attributes:
label: Checklist
description: Break the work into concrete steps.
placeholder: |
- [ ] ...
- [ ] ...
validations:
required: true
- type: dropdown
id: priority
attributes:
label: Priority
options:
- low
- medium
- high
validations:
required: true
- type: textarea
id: validation
attributes:
label: Validation
placeholder: Reload the plugin, open it from FeedBack, test during playback, and check console errors.
10 changes: 5 additions & 5 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Split Screen Plugin — AI Agent Guide

All logic lives in a single IIFE in `screen.js`. There is no build step, no bundler, no imports. The plugin is loaded as a plain `<script>` tag by slopsmith core, which means every global it needs (`highway`, `createHighway`, `window.playSong`, `window.showScreen`) must already be on `window` when the script executes.
All logic lives in a single IIFE in `screen.js`. There is no build step, no bundler, no imports. The plugin is loaded as a plain `<script>` tag by feedBack core, which means every global it needs (`highway`, `createHighway`, `window.playSong`, `window.showScreen`) must already be on `window` when the script executes.

## Module structure

Expand Down Expand Up @@ -355,7 +355,7 @@ Follow the lyrics/jumping-tab pattern:

## Git and PR conventions

- All work goes on feature branches off `main` in this repo (`topkoa/slopsmith-plugin-splitscreen`)
- PRs target `topkoa/slopsmith-plugin-splitscreen` — NOT `got-feedback/feedBack-plugin-splitscreen` (the upstream)
- Use `gh pr create --repo topkoa/slopsmith-plugin-splitscreen --base main --head topkoa:<branch>` from inside the plugin directory
- Do not base feature branches on `upstream/main` — the fork and upstream can diverge; always branch from `origin/main`
- All work goes on feature branches off `main` in this repo (`carochacs/feedBack-plugin-splitscreen`)
- PRs target `carochacs/feedBack-plugin-splitscreen`
- Use `gh pr create --repo carochacs/feedBack-plugin-splitscreen --base main --head carochacs:<branch>` from inside the plugin directory
- Always branch from `origin/main` — there is no separate upstream remote
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Slopsmith Plugin: Split Screen
# feedBack Plugin: Split Screen

A plugin for [Slopsmith](https://github.com/got-feedback/feedBack) that shows 2–4 highway panels side-by-side during playback, each rendering a different arrangement of the same song. Practice lead and rhythm at once, watch bass against lead, or run a quad view of every arrangement a song has.
A plugin for [feedBack](https://github.com/got-feedback/feedBack) that shows 2–4 highway panels side-by-side during playback, each rendering a different arrangement of the same song. Practice lead and rhythm at once, watch bass against lead, or run a quad view of every arrangement a song has.

## Features

Expand All @@ -22,12 +22,12 @@ A plugin for [Slopsmith](https://github.com/got-feedback/feedBack) that shows 2
## Installation

```bash
cd /path/to/slopsmith/plugins
git clone https://github.com/topkoa/slopsmith-plugin-splitscreen.git splitscreen
cd /path/to/feedBack/plugins
git clone https://github.com/carochacs/feedBack-plugin-splitscreen.git splitscreen
docker compose restart
```

**Compatibility** — splitscreen runs on any Slopsmith core. On cores with the `highway:visibility` plugin API (~0.2.7.1+), a visualization plugin that mounts a sibling overlay — e.g. the 3D Highway's WebGL overlay — hides itself cleanly while splitscreen is active. On older cores that overlay may bleed through the panels; update the core (and the 3D Highway plugin) to fix it.
**Compatibility** — splitscreen runs on any feedBack core. On cores with the `highway:visibility` plugin API (~0.2.7.1+), a visualization plugin that mounts a sibling overlay — e.g. the 3D Highway's WebGL overlay — hides itself cleanly while splitscreen is active. On older cores that overlay may bleed through the panels; update the core (and the 3D Highway plugin) to fix it.

## Usage

Expand Down Expand Up @@ -305,7 +305,7 @@ Messages arrive in the order listed above. Do not start rendering until you rece

## Requirements

- Slopsmith with the highway factory (`createHighway()`) and `setRenderer` support exposed on `window` — available in all recent builds (slopsmith#36)
- feedBack with the highway factory (`createHighway()`) and `setRenderer` support exposed on `window` — available in all recent builds (slopsmith#36)
- A song with ≥2 arrangements to see any benefit; 1-arrangement songs simply render the same view in every panel

## Other Plugins
Expand Down
2 changes: 1 addition & 1 deletion plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"id": "splitscreen",
"name": "Split Screen",
"version": "1.11.0",
"version": "1.14.0",
"private": false,
"settings": {
"html": "settings.html",
Expand Down
Loading