Rename project from karaoke-maker to songtrace #3

Merged
branderson merged 6 commits from songtrace-rename into main 2026-07-27 18:42:58 -07:00
Owner

Summary generated by LLM agent

Summary

Renames the project from karaoke-maker to songtrace end to end, with no
behaviour change. songtrace is one word (no hyphen/underscore split),
evocative, and literally accurate: you supply a song and its reference
lyrics, and the pipeline traces the melody line out of them (forced
alignment for word timings, pitch tracking for notes).

Design and plan: ~/specs/2026-07-27-songtrace-rename-design.md and
~/specs/2026-07-27-songtrace-rename-plan.md (not committed to this repo,
per personal convention).

Six commits, one per task:

  • Move src/karaoke_maker/ → src/songtrace/, rewrite all importers in
    tests//scripts/. Distribution/CLI still say karaoke-maker at this
    point, so version('karaoke-maker') keeps resolving.
  • Rename the distribution and CLI command (pyproject.toml
    [project]/[project.scripts], cli.py's prog=/version() lookup,
    Dockerfile CMD, Compose service name).
  • Rename the config env var (KARAOKE_MAKER_CONFIG → SONGTRACE_CONFIG),
    the default config path (~/.config/songtrace/config.toml), the
    Config.creator default, and the separate E2E test env-var family
    (KARAOKE_E2E* → SONGTRACE_E2E*). This is a deliberate clean break —
    no fallback to the old env var/path, no deprecation warning.
  • Restyle the web UI wordmark (KARAOKE/MAKER → SONG/TRACE), keeping
    the カラオケ katakana subline. No CSS changes. Screenshot regenerated.
  • Update the README: heading, tagline, config section, six command
    examples, and a migration note for existing installs.
  • Final verification sweep + a small fix-up commit for two minor
    documentation gaps found in final review (the migration note didn't
    mention uninstalling the stale karaoke-maker console script, and didn't
    flag that the Compose service rename orphans the old container on
    upgrade).

What was tested

  • Full pytest suite: 230 passed, 1 skipped (test_e2e.py, gated on
    SONGTRACE_E2E, unset by design) — run after every task and again before
    opening this PR.
  • songtrace --version, command -v karaoke-maker (confirms the old
    console script is gone after reinstall), songtrace.web.STATIC asset
    resolution, and the ~/.config/songtrace/config.toml default-path
    fallback (the one load_config branch no test covers) — all verified
    directly, not just inferred from green tests.
  • git grep -in "karaoke" across the whole tree returns exactly three
    matches, all deliberate domain vocabulary (cli.py's help text,
    pyproject.toml's description, the README's migration command) — no
    stray karaoke-maker/karaoke_maker/KARAOKE_ identifiers anywhere.
  • Web UI screenshot regenerated via Playwright and visually confirmed to
    show the new SONG / TRACE wordmark.
  • Not verified in this environment: docker compose build && docker compose up -d — no Docker daemon available in the sandbox. Both
    Dockerfile and docker-compose.yml were reviewed statically and look
    correct (ENV SONGTRACE_CONFIG=..., CMD ["songtrace", "serve"],
    service key songtrace), but a live build/serve check on a host with
    Docker is still owed before this is fully verified.

Out of scope (host-side, not part of this PR)

  • Renaming the Gitea repo itself (branderson/karaoke-maker →
    branderson/songtrace) and updating origin.
  • Renaming the local working-copy directory.
  • Moving ~/.config/karaoke-maker/ to ~/.config/songtrace/ on any
    bare-metal install (the README's new migration note covers this for
    end users).
**Summary generated by LLM agent** ## Summary Renames the project from `karaoke-maker` to `songtrace` end to end, with no behaviour change. `songtrace` is one word (no hyphen/underscore split), evocative, and literally accurate: you supply a song and its reference lyrics, and the pipeline traces the melody line out of them (forced alignment for word timings, pitch tracking for notes). Design and plan: `~/specs/2026-07-27-songtrace-rename-design.md` and `~/specs/2026-07-27-songtrace-rename-plan.md` (not committed to this repo, per personal convention). Six commits, one per task: - Move `src/karaoke_maker/` → `src/songtrace/`, rewrite all importers in `tests/`/`scripts/`. Distribution/CLI still say `karaoke-maker` at this point, so `version('karaoke-maker')` keeps resolving. - Rename the distribution and CLI command (`pyproject.toml` `[project]`/`[project.scripts]`, `cli.py`'s `prog=`/`version()` lookup, `Dockerfile` `CMD`, Compose service name). - Rename the config env var (`KARAOKE_MAKER_CONFIG` → `SONGTRACE_CONFIG`), the default config path (`~/.config/songtrace/config.toml`), the `Config.creator` default, and the separate E2E test env-var family (`KARAOKE_E2E*` → `SONGTRACE_E2E*`). This is a deliberate clean break — no fallback to the old env var/path, no deprecation warning. - Restyle the web UI wordmark (`KARAOKE`/`MAKER` → `SONG`/`TRACE`), keeping the カラオケ katakana subline. No CSS changes. Screenshot regenerated. - Update the README: heading, tagline, config section, six command examples, and a migration note for existing installs. - Final verification sweep + a small fix-up commit for two minor documentation gaps found in final review (the migration note didn't mention uninstalling the stale `karaoke-maker` console script, and didn't flag that the Compose service rename orphans the old container on upgrade). ## What was tested - Full pytest suite: 230 passed, 1 skipped (`test_e2e.py`, gated on `SONGTRACE_E2E`, unset by design) — run after every task and again before opening this PR. - `songtrace --version`, `command -v karaoke-maker` (confirms the old console script is gone after reinstall), `songtrace.web.STATIC` asset resolution, and the `~/.config/songtrace/config.toml` default-path fallback (the one `load_config` branch no test covers) — all verified directly, not just inferred from green tests. - `git grep -in "karaoke"` across the whole tree returns exactly three matches, all deliberate domain vocabulary (`cli.py`'s help text, `pyproject.toml`'s description, the README's migration command) — no stray `karaoke-maker`/`karaoke_maker`/`KARAOKE_` identifiers anywhere. - Web UI screenshot regenerated via Playwright and visually confirmed to show the new SONG / TRACE wordmark. - **Not verified in this environment:** `docker compose build && docker compose up -d` — no Docker daemon available in the sandbox. Both `Dockerfile` and `docker-compose.yml` were reviewed statically and look correct (`ENV SONGTRACE_CONFIG=...`, `CMD ["songtrace", "serve"]`, service key `songtrace`), but a live build/serve check on a host with Docker is still owed before this is fully verified. ## Out of scope (host-side, not part of this PR) - Renaming the Gitea repo itself (`branderson/karaoke-maker` → `branderson/songtrace`) and updating `origin`. - Renaming the local working-copy directory. - Moving `~/.config/karaoke-maker/` to `~/.config/songtrace/` on any bare-metal install (the README's new migration note covers this for end users).
branderson added 6 commits 2026-07-27 18:40:08 -07:00
branderson merged commit 1633bc9645 into main 2026-07-27 18:42:58 -07:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: branderson/songtrace#3