# Sources

Download date for every external file below: **2026-11-09** (Asia/Bangkok).
Nothing from PianoTify, Super Simple Piano, Musicnotes, MuseScore user uploads, MIDIworld or any quarantine/private intake folder was used.

## Music

| Page | Piece | Composer / arranger | Source | License | What was changed |
|---|---|---|---|---|---|
| `piano.html` | Für Elise (Bagatelle No. 25, WoO 59) | Ludwig van Beethoven (1770–1827). Typeset by Stelios Samelis (Mutopia maintainer). | Mutopia page: https://www.mutopiaproject.org/cgibin/piece-info.cgi?id=931 — direct file: https://www.mutopiaproject.org/ftp/BeethovenLv/WoO59/fur_Elise_WoO59/fur_Elise_WoO59.mid | **Public Domain** (page field "Copyright: Public Domain", link to creativecommons.org/licenses/publicdomain) | None. File saved as `assets/midi/fur-elise-mutopia-931.mid`. Track `up:` is drawn as the right hand and `down:` as the left hand. Duration used by the page: 2:11, which includes 1 s of tail after the last note. |
| `guitar.html` | Spanish Romance (Romance anónimo) | Anonymous. Mutopia maintainer: jeff covey. | Mutopia page: https://www.mutopiaproject.org/cgibin/piece-info.cgi?id=795 — direct file: https://www.mutopiaproject.org/ftp/Anonymous/spanish-romance/spanish-romance.mid | **CC BY-SA 2.5** (page field "Copyright: Creative Commons Attribution-ShareAlike 2.5", link to creativecommons.org/licenses/by-sa/2.5/). The tune is anonymous; the CC license applies to the Mutopia typesetting and MIDI. | MIDI file unchanged, saved as `assets/midi/spanish-romance-mutopia-795.mid`. The demo adds an automatically computed tab fingering (string and fret per note) on top of it; that fingering is not part of the source file. Anyone reusing the MIDI or this derived view must keep attribution and share alike. |
| `drums.html` | When the Saints Go Marching In | Traditional spiritual (public domain). Melody and drum pattern coded by this project. | No download. Generated by `assets/midi/make-saints.js`, which writes `assets/midi/saints-drums.mid`. | Own work over a public-domain tune (no third-party file involved) | Melody (C major, 4/4, 112 bpm) was typed in from the well-known public-domain tune, not copied from a score, so it may differ in small rhythmic details from printed editions. Drums are a General MIDI channel 10 pattern written by code: kick 36, snare 38, closed hat 42, open hat 46, crash 49, toms 45/47/50. Four choruses, 2-bar intro, final crash. A quiet melody-guide track (channel 1, program 56) is included and can be muted. |

## Sounds

| Use | Source | License | Notes |
|---|---|---|---|
| Piano | Salamander Grand Piano V3 by Alexander Holm, 30 mp3 samples (A, C, D#, F# per octave) fetched from https://tonejs.github.io/audio/salamander/ into `assets/vendor/salamander/` | **CC BY 3.0**. Verified on the author's archive.org record (https://archive.org/details/SalamanderGrandPianoV3, `licenseurl` = creativecommons.org/licenses/by/3.0/). The Tone.js-hosted copy ships no license file of its own. | Samples unchanged. |
| Nylon guitar | `acoustic_guitar_nylon-mp3.js` from https://gleitz.github.io/midi-js-soundfonts/FluidR3_GM/ → `assets/vendor/soundfont/` | The midi-js-soundfonts README states the FluidR3_GM set is released under **CC BY 3.0**. I could not independently confirm this against the original FluidR3 license text. | Unchanged. |
| Drums | Synthesised in the browser with Tone.js (`assets/drums.js`) | Own code, no samples | The brief suggested a GM drum kit soundfont. midi-js-soundfonts has no GM drum kit, and the Tone.js sample drum kits have unclear licensing and no crash cymbal, so no sampled kit is used. |

## Fonts (self-hosted, latin subset)

Fraunces (serif) and DM Sans (sans), downloaded from fonts.gstatic.com (Google Fonts) into `assets/fonts/`. Both are published under the SIL Open Font License 1.1 on Google Fonts. The license text itself is not vendored here.

## Libraries

See `README.md` for the library list and licenses.
