Minor text cleanup in comments, configs, and tests

This commit is contained in:
Fabricio Giglio
2026-05-10 23:53:40 +02:00
parent c6a0c7f676
commit 3659430da8
7 changed files with 30 additions and 30 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# Root-level .dockerignore — applied to the build context for the frontend
# Root-level .dockerignore - applied to the build context for the frontend
# (which uses the repo root as context). Keep this list aggressive so the
# build context stays small.
+2 -2
View File
@@ -1,6 +1,6 @@
# ─── Bach to Basics — environment configuration ─────────────────────────────
# ─── Bach to Basics - environment configuration ─────────────────────────────
# Copy this file to .env and customize for your deployment.
# .env is gitignored — never commit secrets.
# .env is gitignored - never commit secrets.
# ── Authentication ───────────────────────────────────────────────────────────
+1 -1
View File
@@ -26,7 +26,7 @@ __pycache__/
*.key
secrets.*
# ── Audiveris (large binary — download separately per README) ────────────────
# ── Audiveris (large binary - download separately per README) ────────────────
backend/bin/*.jar
# ── OS metadata ───────────────────────────────────────────────────────────────
+22 -22
View File
@@ -14,45 +14,45 @@ frontend/public/soundfont/sonivox.sf3
Used here as the AlphaTab playback soundfont.
────────────────────────────────────────────────────────────────────────────
Frontend dependencies (selected — full list in frontend/package.json)
Frontend dependencies (selected - full list in frontend/package.json)
────────────────────────────────────────────────────────────────────────────
AlphaTab — MPL-2.0 (sheet music renderer)
PixiJS — MIT (WebGL renderer)
Tone.js — MIT (audio scheduling)
smplr — MIT (sample-based instruments)
WebMidi.js — Apache-2.0 (MIDI input)
React — MIT
Zustand — MIT
Vite — MIT
Tailwind CSS — MIT
AlphaTab - MPL-2.0 (sheet music renderer)
PixiJS - MIT (WebGL renderer)
Tone.js - MIT (audio scheduling)
smplr - MIT (sample-based instruments)
WebMidi.js - Apache-2.0 (MIDI input)
React - MIT
Zustand - MIT
Vite - MIT
Tailwind CSS - MIT
MPL-2.0 note: AlphaTab is consumed unmodified as an npm dependency. MPL-2.0
is per-file copyleft — if you modify AlphaTab's own source files you must
is per-file copyleft - if you modify AlphaTab's own source files you must
share those changes under MPL-2.0, but the rest of this codebase remains
under MIT.
────────────────────────────────────────────────────────────────────────────
Backend dependencies (selected — full list in backend/requirements.txt)
Backend dependencies (selected - full list in backend/requirements.txt)
────────────────────────────────────────────────────────────────────────────
music21 — LGPL-3.0 (music theory + MusicXML)
FastAPI — MIT
defusedxml — PSF-2.0
pianoplayer — MIT (Parncutt fingering algorithm)
yt-dlp — Unlicense (YouTube audio extraction)
pdf2image — MIT
Basic Pitch (optional) — Apache-2.0 (audio → MIDI transcription)
music21 - LGPL-3.0 (music theory + MusicXML)
FastAPI - MIT
defusedxml - PSF-2.0
pianoplayer - MIT (Parncutt fingering algorithm)
yt-dlp - Unlicense (YouTube audio extraction)
pdf2image - MIT
Basic Pitch (optional) - Apache-2.0 (audio → MIDI transcription)
LGPL note (music21): used as a pure Python library import, unmodified.
────────────────────────────────────────────────────────────────────────────
Optional external tools (NOT bundled — user installs separately)
Optional external tools (NOT bundled - user installs separately)
────────────────────────────────────────────────────────────────────────────
Audiveris 5.x — AGPL-3.0 (PDF → MusicXML OMR)
Audiveris 5.x - AGPL-3.0 (PDF → MusicXML OMR)
Audiveris is invoked as a subprocess if the user places audiveris.jar at
backend/bin/. Because it's distributed separately by the user (and is
optional), the AGPL obligations apply only to anyone redistributing the
JAR or hosting Audiveris itself — not to this codebase.
JAR or hosting Audiveris itself - not to this codebase.
@@ -94,7 +94,7 @@ describe("AccuracyTracker", () => {
bus.emit("note:on", note);
bus.emit("input:note:on", { midi: 60, velocity: 80 }); // correct hit
const countBefore = updates.length;
bus.emit("note:off", note); // already hit — should not emit again
bus.emit("note:off", note); // already hit - should not emit again
// No new accuracy:update should have been emitted for the note:off
expect(updates.length).toBe(countBefore);
@@ -247,7 +247,7 @@ describe("AccuracyTracker", () => {
bus.emit("transport:seek", { seconds: 5 }); // clears pending
const countBefore = updates.length;
bus.emit("note:off", note); // pending was cleared — should be a no-op
bus.emit("note:off", note); // pending was cleared - should be a no-op
// No new accuracy:update should have fired
expect(updates.length).toBe(countBefore);
+1 -1
View File
@@ -116,7 +116,7 @@ describe("MidiClock", () => {
mockTransport.seconds = 2;
expect(clock.currentSeconds).toBe(5);
// Change multiplier — currentSeconds must remain 5
// Change multiplier - currentSeconds must remain 5
clock.tempoMultiplier = 0.5;
expect(clock.currentSeconds).toBeCloseTo(5);
});
+1 -1
View File
@@ -36,7 +36,7 @@ describe("lighten", () => {
});
it("handles zero channel values", () => {
// Red only — green and blue stay 0
// Red only - green and blue stay 0
// Math.round(255 * 0.5) = Math.round(127.5) = 128 = 0x80
expect(lighten(0xff0000, 0.5)).toBe(0x800000);
});