Files

59 lines
3.9 KiB
Plaintext

Bach to Basics
Copyright (c) 2025 gigliof
This product includes the following third-party components. Each is subject
to its own license terms; check the upstream project for the full text.
────────────────────────────────────────────────────────────────────────────
Bundled assets
────────────────────────────────────────────────────────────────────────────
frontend/public/soundfont/sonivox.sf3
SONiVOX Embedded Audio Synthesis (EAS) soundfont, originally released
as part of the Android Open Source Project under the Apache License 2.0.
Used here as the AlphaTab playback soundfont.
────────────────────────────────────────────────────────────────────────────
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
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
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)
────────────────────────────────────────────────────────────────────────────
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)
────────────────────────────────────────────────────────────────────────────
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.