@mcptoolshop/ai_jam_session 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/LICENSE +21 -0
  2. package/README.es.md +212 -0
  3. package/README.fr.md +212 -0
  4. package/README.hi.md +212 -0
  5. package/README.it.md +212 -0
  6. package/README.ja.md +214 -0
  7. package/README.md +214 -0
  8. package/README.pt-BR.md +212 -0
  9. package/dist/audio-engine.d.ts +9 -0
  10. package/dist/audio-engine.d.ts.map +1 -0
  11. package/dist/audio-engine.js +422 -0
  12. package/dist/audio-engine.js.map +1 -0
  13. package/dist/cli.d.ts +3 -0
  14. package/dist/cli.d.ts.map +1 -0
  15. package/dist/cli.js +551 -0
  16. package/dist/cli.js.map +1 -0
  17. package/dist/index.d.ts +32 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +41 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/mcp-server.d.ts +3 -0
  22. package/dist/mcp-server.d.ts.map +1 -0
  23. package/dist/mcp-server.js +903 -0
  24. package/dist/mcp-server.js.map +1 -0
  25. package/dist/midi/parser.d.ts +16 -0
  26. package/dist/midi/parser.d.ts.map +1 -0
  27. package/dist/midi/parser.js +192 -0
  28. package/dist/midi/parser.js.map +1 -0
  29. package/dist/midi/types.d.ts +44 -0
  30. package/dist/midi/types.d.ts.map +1 -0
  31. package/dist/midi/types.js +8 -0
  32. package/dist/midi/types.js.map +1 -0
  33. package/dist/note-parser.d.ts +105 -0
  34. package/dist/note-parser.d.ts.map +1 -0
  35. package/dist/note-parser.js +278 -0
  36. package/dist/note-parser.js.map +1 -0
  37. package/dist/playback/controls.d.ts +124 -0
  38. package/dist/playback/controls.d.ts.map +1 -0
  39. package/dist/playback/controls.js +252 -0
  40. package/dist/playback/controls.js.map +1 -0
  41. package/dist/playback/midi-engine.d.ts +68 -0
  42. package/dist/playback/midi-engine.d.ts.map +1 -0
  43. package/dist/playback/midi-engine.js +227 -0
  44. package/dist/playback/midi-engine.js.map +1 -0
  45. package/dist/playback/position.d.ts +95 -0
  46. package/dist/playback/position.d.ts.map +1 -0
  47. package/dist/playback/position.js +223 -0
  48. package/dist/playback/position.js.map +1 -0
  49. package/dist/playback/timing.d.ts +31 -0
  50. package/dist/playback/timing.d.ts.map +1 -0
  51. package/dist/playback/timing.js +57 -0
  52. package/dist/playback/timing.js.map +1 -0
  53. package/dist/sample-engine.d.ts +17 -0
  54. package/dist/sample-engine.d.ts.map +1 -0
  55. package/dist/sample-engine.js +428 -0
  56. package/dist/sample-engine.js.map +1 -0
  57. package/dist/schemas.d.ts +40 -0
  58. package/dist/schemas.d.ts.map +1 -0
  59. package/dist/schemas.js +42 -0
  60. package/dist/schemas.js.map +1 -0
  61. package/dist/session.d.ts +106 -0
  62. package/dist/session.d.ts.map +1 -0
  63. package/dist/session.js +361 -0
  64. package/dist/session.js.map +1 -0
  65. package/dist/sfz-parser.d.ts +36 -0
  66. package/dist/sfz-parser.d.ts.map +1 -0
  67. package/dist/sfz-parser.js +95 -0
  68. package/dist/sfz-parser.js.map +1 -0
  69. package/dist/smoke.d.ts +2 -0
  70. package/dist/smoke.d.ts.map +1 -0
  71. package/dist/smoke.js +512 -0
  72. package/dist/smoke.js.map +1 -0
  73. package/dist/songs/config/loader.d.ts +14 -0
  74. package/dist/songs/config/loader.d.ts.map +1 -0
  75. package/dist/songs/config/loader.js +53 -0
  76. package/dist/songs/config/loader.js.map +1 -0
  77. package/dist/songs/config/schema.d.ts +70 -0
  78. package/dist/songs/config/schema.d.ts.map +1 -0
  79. package/dist/songs/config/schema.js +53 -0
  80. package/dist/songs/config/schema.js.map +1 -0
  81. package/dist/songs/index.d.ts +16 -0
  82. package/dist/songs/index.d.ts.map +1 -0
  83. package/dist/songs/index.js +20 -0
  84. package/dist/songs/index.js.map +1 -0
  85. package/dist/songs/jam.d.ts +48 -0
  86. package/dist/songs/jam.d.ts.map +1 -0
  87. package/dist/songs/jam.js +324 -0
  88. package/dist/songs/jam.js.map +1 -0
  89. package/dist/songs/loader.d.ts +27 -0
  90. package/dist/songs/loader.d.ts.map +1 -0
  91. package/dist/songs/loader.js +90 -0
  92. package/dist/songs/loader.js.map +1 -0
  93. package/dist/songs/midi/hands.d.ts +46 -0
  94. package/dist/songs/midi/hands.d.ts.map +1 -0
  95. package/dist/songs/midi/hands.js +134 -0
  96. package/dist/songs/midi/hands.js.map +1 -0
  97. package/dist/songs/midi/ingest.d.ts +8 -0
  98. package/dist/songs/midi/ingest.d.ts.map +1 -0
  99. package/dist/songs/midi/ingest.js +191 -0
  100. package/dist/songs/midi/ingest.js.map +1 -0
  101. package/dist/songs/midi/measures.d.ts +41 -0
  102. package/dist/songs/midi/measures.d.ts.map +1 -0
  103. package/dist/songs/midi/measures.js +64 -0
  104. package/dist/songs/midi/measures.js.map +1 -0
  105. package/dist/songs/midi/types.d.ts +25 -0
  106. package/dist/songs/midi/types.d.ts.map +1 -0
  107. package/dist/songs/midi/types.js +8 -0
  108. package/dist/songs/midi/types.js.map +1 -0
  109. package/dist/songs/registry.d.ts +37 -0
  110. package/dist/songs/registry.d.ts.map +1 -0
  111. package/dist/songs/registry.js +197 -0
  112. package/dist/songs/registry.js.map +1 -0
  113. package/dist/songs/types.d.ts +99 -0
  114. package/dist/songs/types.d.ts.map +1 -0
  115. package/dist/songs/types.js +27 -0
  116. package/dist/songs/types.js.map +1 -0
  117. package/dist/teaching/live-midi-feedback.d.ts +36 -0
  118. package/dist/teaching/live-midi-feedback.d.ts.map +1 -0
  119. package/dist/teaching/live-midi-feedback.js +259 -0
  120. package/dist/teaching/live-midi-feedback.js.map +1 -0
  121. package/dist/teaching/midi-feedback.d.ts +33 -0
  122. package/dist/teaching/midi-feedback.d.ts.map +1 -0
  123. package/dist/teaching/midi-feedback.js +208 -0
  124. package/dist/teaching/midi-feedback.js.map +1 -0
  125. package/dist/teaching/sing-on-midi.d.ts +77 -0
  126. package/dist/teaching/sing-on-midi.d.ts.map +1 -0
  127. package/dist/teaching/sing-on-midi.js +186 -0
  128. package/dist/teaching/sing-on-midi.js.map +1 -0
  129. package/dist/teaching.d.ts +148 -0
  130. package/dist/teaching.d.ts.map +1 -0
  131. package/dist/teaching.js +453 -0
  132. package/dist/teaching.js.map +1 -0
  133. package/dist/test-sound.d.ts +3 -0
  134. package/dist/test-sound.d.ts.map +1 -0
  135. package/dist/test-sound.js +41 -0
  136. package/dist/test-sound.js.map +1 -0
  137. package/dist/types.d.ts +229 -0
  138. package/dist/types.d.ts.map +1 -0
  139. package/dist/types.js +22 -0
  140. package/dist/types.js.map +1 -0
  141. package/dist/vmpk.d.ts +23 -0
  142. package/dist/vmpk.d.ts.map +1 -0
  143. package/dist/vmpk.js +236 -0
  144. package/dist/vmpk.js.map +1 -0
  145. package/logo.png +0 -0
  146. package/package.json +70 -0
  147. package/songs/builtin/a-change-is-gonna-come.json +95 -0
  148. package/songs/builtin/a-thousand-years.json +93 -0
  149. package/songs/builtin/aint-no-sunshine.json +98 -0
  150. package/songs/builtin/all-blues.json +92 -0
  151. package/songs/builtin/autumn-leaves.json +100 -0
  152. package/songs/builtin/baba-oriley.json +91 -0
  153. package/songs/builtin/bach-invention-no1.json +70 -0
  154. package/songs/builtin/bach-prelude-c-major-bwv846.json +1282 -0
  155. package/songs/builtin/basic-12-bar-blues.json +119 -0
  156. package/songs/builtin/beethoven-waldstein-mvt1.json +7766 -0
  157. package/songs/builtin/bennie-and-the-jets.json +92 -0
  158. package/songs/builtin/besame-mucho.json +93 -0
  159. package/songs/builtin/black-orpheus.json +92 -0
  160. package/songs/builtin/blue-bossa.json +94 -0
  161. package/songs/builtin/blues-in-g.json +92 -0
  162. package/songs/builtin/bohemian-rhapsody-intro.json +94 -0
  163. package/songs/builtin/boogie-woogie-basics.json +93 -0
  164. package/songs/builtin/bossa-nova-basic.json +95 -0
  165. package/songs/builtin/chopin-nocturne-op9-no2.json +70 -0
  166. package/songs/builtin/cinema-paradiso.json +94 -0
  167. package/songs/builtin/clair-de-lune.json +11511 -0
  168. package/songs/builtin/clocks.json +91 -0
  169. package/songs/builtin/crystal-stream.json +70 -0
  170. package/songs/builtin/desafinado.json +93 -0
  171. package/songs/builtin/dont-stop-believin.json +91 -0
  172. package/songs/builtin/dream-on.json +100 -0
  173. package/songs/builtin/easy-winners.json +70 -0
  174. package/songs/builtin/el-condor-pasa.json +93 -0
  175. package/songs/builtin/elite-syncopations.json +70 -0
  176. package/songs/builtin/evening-calm.json +70 -0
  177. package/songs/builtin/everyday-blues.json +93 -0
  178. package/songs/builtin/fly-me-to-the-moon.json +91 -0
  179. package/songs/builtin/forrest-gump-suite.json +93 -0
  180. package/songs/builtin/fur-elise.json +20094 -0
  181. package/songs/builtin/georgia-on-my-mind.json +93 -0
  182. package/songs/builtin/girl-from-ipanema.json +92 -0
  183. package/songs/builtin/gladiolus-rag.json +70 -0
  184. package/songs/builtin/great-balls-of-fire.json +92 -0
  185. package/songs/builtin/guantanamera.json +92 -0
  186. package/songs/builtin/hallelujah.json +92 -0
  187. package/songs/builtin/hedwigs-theme.json +93 -0
  188. package/songs/builtin/hotel-california.json +92 -0
  189. package/songs/builtin/imagine.json +92 -0
  190. package/songs/builtin/just-the-two-of-us.json +92 -0
  191. package/songs/builtin/la-bamba.json +92 -0
  192. package/songs/builtin/layla-piano-coda.json +93 -0
  193. package/songs/builtin/lean-on-me.json +91 -0
  194. package/songs/builtin/let-it-be.json +101 -0
  195. package/songs/builtin/lets-stay-together.json +93 -0
  196. package/songs/builtin/magnetic-rag.json +70 -0
  197. package/songs/builtin/maple-leaf-rag.json +99 -0
  198. package/songs/builtin/mia-and-sebastians-theme.json +93 -0
  199. package/songs/builtin/minor-blues-in-a.json +94 -0
  200. package/songs/builtin/misty.json +94 -0
  201. package/songs/builtin/moon-river.json +93 -0
  202. package/songs/builtin/moonlight-sonata-mvt1.json +101 -0
  203. package/songs/builtin/morning-light.json +70 -0
  204. package/songs/builtin/mountain-dawn.json +70 -0
  205. package/songs/builtin/mozart-k545-mvt1.json +2956 -0
  206. package/songs/builtin/my-girl.json +92 -0
  207. package/songs/builtin/night-train.json +92 -0
  208. package/songs/builtin/november-rain.json +93 -0
  209. package/songs/builtin/ocean-waves.json +70 -0
  210. package/songs/builtin/over-the-rainbow.json +93 -0
  211. package/songs/builtin/oye-como-va.json +93 -0
  212. package/songs/builtin/peacherine-rag.json +70 -0
  213. package/songs/builtin/piano-man.json +92 -0
  214. package/songs/builtin/pineapple-rag.json +70 -0
  215. package/songs/builtin/pink-panther.json +94 -0
  216. package/songs/builtin/ragtime-dance.json +70 -0
  217. package/songs/builtin/river-flows-in-you.json +102 -0
  218. package/songs/builtin/rocket-man.json +92 -0
  219. package/songs/builtin/satie-gymnopedie-no1.json +70 -0
  220. package/songs/builtin/satin-doll.json +93 -0
  221. package/songs/builtin/schindlers-list.json +96 -0
  222. package/songs/builtin/schumann-traumerei.json +70 -0
  223. package/songs/builtin/sitting-on-the-dock.json +91 -0
  224. package/songs/builtin/slow-blues-in-bb.json +98 -0
  225. package/songs/builtin/snowfall.json +70 -0
  226. package/songs/builtin/so-what.json +92 -0
  227. package/songs/builtin/solace.json +70 -0
  228. package/songs/builtin/someone-like-you.json +92 -0
  229. package/songs/builtin/spirited-away.json +94 -0
  230. package/songs/builtin/st-louis-blues.json +93 -0
  231. package/songs/builtin/stairway-intro.json +93 -0
  232. package/songs/builtin/starlight-waltz.json +70 -0
  233. package/songs/builtin/stay-with-me.json +93 -0
  234. package/songs/builtin/stormy-monday.json +94 -0
  235. package/songs/builtin/superstition.json +93 -0
  236. package/songs/builtin/sweet-home-chicago.json +93 -0
  237. package/songs/builtin/take-five.json +92 -0
  238. package/songs/builtin/take-the-a-train.json +93 -0
  239. package/songs/builtin/the-entertainer.json +98 -0
  240. package/songs/builtin/the-godfather-waltz.json +93 -0
  241. package/songs/builtin/thrill-is-gone.json +94 -0
  242. package/songs/builtin/twilight-garden.json +70 -0
  243. package/songs/builtin/watermark.json +70 -0
  244. package/songs/builtin/wave.json +93 -0
  245. package/songs/builtin/whats-going-on.json +93 -0
  246. package/songs/builtin/yesterday.json +92 -0
@@ -0,0 +1,94 @@
1
+ {
2
+ "id": "stormy-monday",
3
+ "title": "Call It Stormy Monday (But Tuesday Is Just as Bad)",
4
+ "genre": "blues",
5
+ "composer": "T-Bone Walker",
6
+ "difficulty": "intermediate",
7
+ "key": "G major",
8
+ "tempo": 72,
9
+ "timeSignature": "4/4",
10
+ "durationSeconds": 27,
11
+ "tags": [
12
+ "slow-blues",
13
+ "t-bone-walker",
14
+ "jazz-blues",
15
+ "9th-chords",
16
+ "classic",
17
+ "sophisticated"
18
+ ],
19
+ "source": "Claude arrangement — simplified interpretation",
20
+ "musicalLanguage": {
21
+ "description": "T-Bone Walker's 1947 classic is the gold standard for slow, sophisticated blues. Unlike basic 12-bar blues, Stormy Monday uses jazzy 9th chords and a turnaround that passes through unusual changes. The slow tempo demands expressive phrasing — every note must count.",
22
+ "structure": "12-bar blues with jazz substitutions. This excerpt: first 8 bars",
23
+ "keyMoments": [
24
+ "Bar 1-2: G9 — the rich 9th chord sets this apart from basic blues immediately",
25
+ "Bar 3-4: G9 continues with melodic embellishments — slow and expressive",
26
+ "Bar 5-6: C9 (IV chord) — same lush voicing moved to the subdominant",
27
+ "Bar 7-8: Return to G9 — the melody weeps and sighs"
28
+ ],
29
+ "teachingGoals": [
30
+ "9th chord voicings — richer than basic dominant 7ths",
31
+ "Slow blues phrasing — stretching time, bending the beat",
32
+ "Dynamic control at slow tempos — every note has weight"
33
+ ],
34
+ "styleTips": [
35
+ "This is SLOW — do not rush. Let every note breathe and decay.",
36
+ "The 9th chords give a sophisticated, jazzy color. Lean into them.",
37
+ "Think of a vocalist on every melody note — where would they breathe?"
38
+ ]
39
+ },
40
+ "measures": [
41
+ {
42
+ "number": 1,
43
+ "rightHand": "B4:q D5:q F5:q A5:q",
44
+ "leftHand": "G2:q B2 F3:q G2:q B2 F3:q",
45
+ "teachingNote": "G9 — the 9th chord (G-B-D-F-A). Left hand plays root + shell. The 9th (A) on top adds color.",
46
+ "dynamics": "mp"
47
+ },
48
+ {
49
+ "number": 2,
50
+ "rightHand": "G5:q F5:e D5:e B4:h",
51
+ "leftHand": "G2:q B2 F3:q G2:q B2 F3:q",
52
+ "teachingNote": "G9 — melody descends through the chord. Take your time. This is the blues at its most expressive."
53
+ },
54
+ {
55
+ "number": 3,
56
+ "rightHand": "Bb4:e B4:e D5:q R:q G4:q",
57
+ "leftHand": "G2:q B2 F3:q G2:h",
58
+ "teachingNote": "G9 — the Bb grace note sliding into B is the blue note smear. Essential blues technique.",
59
+ "dynamics": "mf"
60
+ },
61
+ {
62
+ "number": 4,
63
+ "rightHand": "A4:q Bb4:e B4:e D5:h",
64
+ "leftHand": "G2:q B2 F3:q G2:q D3:q",
65
+ "teachingNote": "G9 — more blue note movement. The Bb-B slide appears again. It is the voice of the blues."
66
+ },
67
+ {
68
+ "number": 5,
69
+ "rightHand": "E5:q G5:q Bb4:q D5:q",
70
+ "leftHand": "C3:q E3 Bb3:q C3:q E3 Bb3:q",
71
+ "teachingNote": "C9 — same 9th voicing on the IV chord. The 9th (D) and b7 (Bb) give it richness.",
72
+ "dynamics": "mf"
73
+ },
74
+ {
75
+ "number": 6,
76
+ "rightHand": "C5:q Bb4:e G4:e E4:h",
77
+ "leftHand": "C3:q E3 Bb3:q C3:h",
78
+ "teachingNote": "C9 — melody descends through the IV chord. Same expressive approach."
79
+ },
80
+ {
81
+ "number": 7,
82
+ "rightHand": "B4:q D5:q A4:h",
83
+ "leftHand": "G2:q B2 F3:q G2:q B2 F3:q",
84
+ "teachingNote": "G9 — back home. The 9th (A) is the resolution note. Let it hang in the air.",
85
+ "dynamics": "mp"
86
+ },
87
+ {
88
+ "number": 8,
89
+ "rightHand": "G4:q Bb4:e B4:e D5:q F5:q",
90
+ "leftHand": "G2:q B2 D3:q F3:q D3:q",
91
+ "teachingNote": "G9 — ascending run building toward the V chord. The blue note Bb slides into B again."
92
+ }
93
+ ]
94
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "id": "superstition",
3
+ "title": "Superstition",
4
+ "genre": "rnb",
5
+ "composer": "Stevie Wonder",
6
+ "difficulty": "intermediate",
7
+ "key": "Eb minor",
8
+ "tempo": 100,
9
+ "timeSignature": "4/4",
10
+ "durationSeconds": 19,
11
+ "tags": [
12
+ "funk",
13
+ "clavinet",
14
+ "stevie-wonder",
15
+ "syncopation",
16
+ "groove"
17
+ ],
18
+ "source": "Claude arrangement — simplified interpretation",
19
+ "musicalLanguage": {
20
+ "description": "Stevie Wonder's iconic funk anthem built on a relentless clavinet riff. This piano arrangement captures the syncopated groove and bluesy minor tonality. The left hand drives a percussive bass pattern while the right hand plays the signature riff with its characteristic chromatic approach tones.",
21
+ "structure": "Riff-based: 4 bars main riff, 4 bars variation with ascending line",
22
+ "keyMoments": [
23
+ "Bars 1-2: The iconic Eb minor clavinet riff — syncopation is everything here.",
24
+ "Bars 5-6: The riff opens up with a climbing figure toward Gb major.",
25
+ "Bar 8: Turnaround back to the top — the funk never stops."
26
+ ],
27
+ "teachingGoals": [
28
+ "Syncopated rhythm — playing on the 'and' of beats",
29
+ "Percussive touch on piano to emulate clavinet sound",
30
+ "Coordinating a driving left hand bass with syncopated right hand"
31
+ ],
32
+ "styleTips": [
33
+ "Play staccato and percussive — think clavinet, not legato piano",
34
+ "Accent the off-beats in the right hand for authentic funk feel",
35
+ "Left hand should be rock-solid and metronomic — it's the drummer"
36
+ ]
37
+ },
38
+ "measures": [
39
+ {
40
+ "number": 1,
41
+ "rightHand": "Eb4:e Gb4:e Eb4:e R:e Bb4:e Gb4:e Eb4:e R:e",
42
+ "leftHand": "Eb2:e R:e Eb3:e Eb2:e R:e Eb3:e Eb2:e R:e",
43
+ "dynamics": "f",
44
+ "teachingNote": "The main riff — staccato and punchy. Every note should pop."
45
+ },
46
+ {
47
+ "number": 2,
48
+ "rightHand": "Db4:e Eb4:e Gb4:e Eb4:e R:e Bb4:e R:e Gb4:e",
49
+ "leftHand": "Bb1:e R:e Bb2:e Bb1:e R:e Bb2:e Bb1:e R:e",
50
+ "teachingNote": "Db is the chromatic approach tone — slide into Eb quickly."
51
+ },
52
+ {
53
+ "number": 3,
54
+ "rightHand": "Eb4:e Gb4:e Eb4:e R:e Bb4:e Gb4:e Eb4:e R:e",
55
+ "leftHand": "Eb2:e R:e Eb3:e Eb2:e R:e Eb3:e Eb2:e R:e",
56
+ "teachingNote": "Repeat of bar 1 — lock in the groove before moving on."
57
+ },
58
+ {
59
+ "number": 4,
60
+ "rightHand": "Db4:e Eb4:e Gb4:e Bb4:e Ab4:e Gb4:e Eb4:e Db4:e",
61
+ "leftHand": "Bb1:e R:e Bb2:e Bb1:e Ab1:e R:e Ab2:e Ab1:e",
62
+ "dynamics": "ff",
63
+ "teachingNote": "Descending fill — keep it tight and funky."
64
+ },
65
+ {
66
+ "number": 5,
67
+ "rightHand": "Gb4:e Ab4:e Bb4:e R:e Gb4:e Ab4:e Bb4:e Db5:e",
68
+ "leftHand": "Gb2:e R:e Gb3:e Gb2:e R:e Gb3:e Gb2:e R:e",
69
+ "dynamics": "mf",
70
+ "teachingNote": "The riff opens up — ascending line builds energy."
71
+ },
72
+ {
73
+ "number": 6,
74
+ "rightHand": "Db5:e Bb4:e Ab4:e Gb4:e Eb4:e Gb4:e Ab4:e Bb4:e",
75
+ "leftHand": "Db2:e R:e Db3:e Db2:e R:e Db3:e Db2:e R:e",
76
+ "teachingNote": "Wave-like motion — down then back up. Keep the rhythm strict."
77
+ },
78
+ {
79
+ "number": 7,
80
+ "rightHand": "Eb4:e Gb4:e Eb4:e R:e Bb4:e Gb4:e Eb4:e R:e",
81
+ "leftHand": "Eb2:e R:e Eb3:e Eb2:e R:e Eb3:e Eb2:e R:e",
82
+ "dynamics": "f",
83
+ "teachingNote": "Back to the main riff — the return should feel satisfying."
84
+ },
85
+ {
86
+ "number": 8,
87
+ "rightHand": "Db4:e Eb4:e Gb4:e Bb4:e Eb5:e R:e Eb4 Gb4:e",
88
+ "leftHand": "Bb1:e R:e Bb2:e Bb1:e Eb2:e R:e Eb3:e Eb2:e",
89
+ "dynamics": "ff",
90
+ "teachingNote": "Turnaround — the Eb5 is the exclamation point before looping back."
91
+ }
92
+ ]
93
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "id": "sweet-home-chicago",
3
+ "title": "Sweet Home Chicago",
4
+ "genre": "blues",
5
+ "composer": "Robert Johnson",
6
+ "difficulty": "beginner",
7
+ "key": "E major",
8
+ "tempo": 116,
9
+ "timeSignature": "4/4",
10
+ "durationSeconds": 17,
11
+ "tags": [
12
+ "shuffle",
13
+ "robert-johnson",
14
+ "classic-blues",
15
+ "boogie",
16
+ "chicago-blues",
17
+ "12-bar"
18
+ ],
19
+ "source": "Claude arrangement — simplified interpretation",
20
+ "musicalLanguage": {
21
+ "description": "Robert Johnson recorded this in 1936 and it became the anthem of Chicago blues. The shuffle groove is infectious — once you start, your foot will not stop tapping. The boogie-woogie left hand drives the train while the right hand plays a simple, singable melody.",
22
+ "structure": "12-bar blues with shuffle feel. This excerpt: first 8 bars",
23
+ "keyMoments": [
24
+ "Bar 1-2: E7 shuffle — the left hand boogie pattern locks in the groove immediately",
25
+ "Bar 3-4: E7 continues — repetition builds the hypnotic feel",
26
+ "Bar 5-6: A7 — IV chord shift. The boogie pattern moves with it.",
27
+ "Bar 7-8: E7 — back home. The shuffle never stops."
28
+ ],
29
+ "teachingGoals": [
30
+ "Shuffle/boogie-woogie left hand pattern",
31
+ "Basic 12-bar blues in E — a guitar-friendly key for jamming",
32
+ "Keeping a steady groove while adding simple right-hand melody"
33
+ ],
34
+ "styleTips": [
35
+ "The left hand is the engine — keep it absolutely steady",
36
+ "Shuffle means triplet feel on the eighths: long-SHORT long-SHORT",
37
+ "Right hand melody is secondary — the groove is what matters most"
38
+ ]
39
+ },
40
+ "measures": [
41
+ {
42
+ "number": 1,
43
+ "rightHand": "E4:q G#4:q B4:q D5:q",
44
+ "leftHand": "E2:q B2:q E3:q B2:q",
45
+ "teachingNote": "E7 — ascending through the chord. Left hand establishes the boogie bass: E-B-E-B.",
46
+ "dynamics": "mf"
47
+ },
48
+ {
49
+ "number": 2,
50
+ "rightHand": "B4:q G#4:q E4:h",
51
+ "leftHand": "E2:q B2:q E3:q B2:q",
52
+ "teachingNote": "E7 — melody comes back down. Keep the left hand pumping."
53
+ },
54
+ {
55
+ "number": 3,
56
+ "rightHand": "E4:q G4:e G#4:e B4:q D5:q",
57
+ "leftHand": "E2:q B2:q E3:q B2:q",
58
+ "teachingNote": "E7 — the G natural sliding to G# is the blue note. That is the soul of this song."
59
+ },
60
+ {
61
+ "number": 4,
62
+ "rightHand": "B4:h E4:h",
63
+ "leftHand": "E2:q B2:q E3:q B2:q",
64
+ "teachingNote": "E7 — simplify with half notes. Rest your right hand while the left keeps going."
65
+ },
66
+ {
67
+ "number": 5,
68
+ "rightHand": "A4:q C#5:q E5:q G5:q",
69
+ "leftHand": "A2:q E3:q A3:q E3:q",
70
+ "teachingNote": "A7 — IV chord! Same boogie pattern shifted to A. The melody transposes too.",
71
+ "dynamics": "f"
72
+ },
73
+ {
74
+ "number": 6,
75
+ "rightHand": "E5:q C#5:q A4:h",
76
+ "leftHand": "A2:q E3:q A3:q E3:q",
77
+ "teachingNote": "A7 — descending. The G natural is gone here — A7 uses G# (its major 7th would be G#)."
78
+ },
79
+ {
80
+ "number": 7,
81
+ "rightHand": "E4:q G#4:q B4:q D5:q",
82
+ "leftHand": "E2:q B2:q E3:q B2:q",
83
+ "teachingNote": "E7 — back home. Same as bar 1. The groove is a circle.",
84
+ "dynamics": "mf"
85
+ },
86
+ {
87
+ "number": 8,
88
+ "rightHand": "B4:q G#4:q E4:q D4:q",
89
+ "leftHand": "E2:q B2:q E3:q B2:q",
90
+ "teachingNote": "E7 — descending to D4 (the b7). Setting up for the turnaround V chord."
91
+ }
92
+ ]
93
+ }
@@ -0,0 +1,92 @@
1
+ {
2
+ "id": "take-five",
3
+ "title": "Take Five",
4
+ "genre": "jazz",
5
+ "composer": "Paul Desmond",
6
+ "difficulty": "intermediate",
7
+ "key": "Eb minor",
8
+ "tempo": 170,
9
+ "timeSignature": "5/4",
10
+ "durationSeconds": 14,
11
+ "tags": [
12
+ "odd-meter",
13
+ "cool-jazz",
14
+ "dave-brubeck",
15
+ "5/4",
16
+ "modal",
17
+ "iconic"
18
+ ],
19
+ "source": "Claude arrangement — simplified interpretation",
20
+ "musicalLanguage": {
21
+ "description": "The most famous odd-meter jazz piece ever recorded. The 5/4 groove splits naturally into 3+2, with the left hand vamp anchoring the feel while the right hand carries the cool, understated melody. Paul Desmond wrote it; Dave Brubeck's quartet made it immortal.",
22
+ "structure": "Vamp-based — A section (Ebm groove), 8 bars shown",
23
+ "keyMoments": [
24
+ "Bar 1: The iconic Ebm7-Bbm7 vamp begins — feel the 3+2 pulse",
25
+ "Bar 3-4: Melody enters with that cool, floating quality over the vamp",
26
+ "Bar 7-8: Melodic tension peaks before resolving back to the vamp"
27
+ ],
28
+ "teachingGoals": [
29
+ "Feel 5/4 time as 3+2 — count ONE-two-three ONE-two",
30
+ "Left-hand vamp independence while right hand plays melody",
31
+ "Minor 7th chord voicings in Eb minor"
32
+ ],
33
+ "styleTips": [
34
+ "Keep the left hand vamp steady and even — it is the entire groove",
35
+ "Right hand melody should float above the vamp, relaxed and cool",
36
+ "Do not rush the 5/4 — let each beat have its full weight"
37
+ ]
38
+ },
39
+ "measures": [
40
+ {
41
+ "number": 1,
42
+ "rightHand": "Eb5:h. Bb4:h",
43
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
44
+ "teachingNote": "Ebm7 to Bbm7 vamp. Feel the 3+2 split: dotted half + half = 5 beats.",
45
+ "dynamics": "mf"
46
+ },
47
+ {
48
+ "number": 2,
49
+ "rightHand": "Db5:h. Ab4:h",
50
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
51
+ "teachingNote": "Same vamp continues. Right hand begins the descending melody outline."
52
+ },
53
+ {
54
+ "number": 3,
55
+ "rightHand": "Eb5:q Db5:q Bb4:q Ab4:h",
56
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
57
+ "teachingNote": "Melody descends stepwise over the steady vamp. Keep left hand rock-solid."
58
+ },
59
+ {
60
+ "number": 4,
61
+ "rightHand": "Bb4:q Ab4:q Gb4:q Eb4:h",
62
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
63
+ "teachingNote": "Melody continues descending. Notice how it outlines the Eb minor pentatonic."
64
+ },
65
+ {
66
+ "number": 5,
67
+ "rightHand": "Gb4:q Ab4:q Bb4:q Db5:h",
68
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
69
+ "teachingNote": "Melody reverses direction, climbing back up. The contour creates tension."
70
+ },
71
+ {
72
+ "number": 6,
73
+ "rightHand": "Eb5:q Db5:q Bb4:h. R:q",
74
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
75
+ "teachingNote": "Melody peaks at Eb5 and falls. The quarter rest at the end lets it breathe."
76
+ },
77
+ {
78
+ "number": 7,
79
+ "rightHand": "Ab4:q Bb4:q Db5:q Eb5:q Db5:q",
80
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
81
+ "teachingNote": "Five quarter notes — one per beat. The melody fills the entire bar.",
82
+ "dynamics": "f"
83
+ },
84
+ {
85
+ "number": 8,
86
+ "rightHand": "Bb4:h. Eb4:h",
87
+ "leftHand": "Eb3 Gb3 Bb3:h. Bb2 Db3 F3:h",
88
+ "teachingNote": "Resolution back to Bb and Eb. The vamp cycle is ready to repeat.",
89
+ "dynamics": "mp"
90
+ }
91
+ ]
92
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "id": "take-the-a-train",
3
+ "title": "Take the A Train",
4
+ "genre": "jazz",
5
+ "composer": "Billy Strayhorn",
6
+ "difficulty": "beginner",
7
+ "key": "C major",
8
+ "tempo": 126,
9
+ "timeSignature": "4/4",
10
+ "durationSeconds": 15,
11
+ "tags": [
12
+ "swing",
13
+ "duke-ellington",
14
+ "billy-strayhorn",
15
+ "big-band",
16
+ "jazz-standard",
17
+ "beginner-friendly"
18
+ ],
19
+ "source": "Claude arrangement — simplified interpretation",
20
+ "musicalLanguage": {
21
+ "description": "Billy Strayhorn wrote this tune on the subway, and it became the theme song of the Duke Ellington Orchestra. The melody is bright and optimistic, built on a simple ascending figure over basic jazz changes. The #4 note (F#) over C major gives it that distinctive, sparkling lift.",
22
+ "structure": "AABA — 32 bars. This excerpt: first A section (8 bars)",
23
+ "keyMoments": [
24
+ "Bar 1-2: The ascending melody with the characteristic F#4 — the lydian sparkle",
25
+ "Bar 3-4: Melody continues climbing toward G5 — riding the A train uptown",
26
+ "Bar 7-8: Phrase resolves to C with a classic swing ending figure"
27
+ ],
28
+ "teachingGoals": [
29
+ "Swing feel at a comfortable medium tempo",
30
+ "The #4 (F#) over a major chord — lydian color in practice",
31
+ "Simple left-hand stride: bass note on 1-3, chord on 2-4"
32
+ ],
33
+ "styleTips": [
34
+ "Bright and happy — this tune smiles. Play with energy.",
35
+ "Swing the eighths but keep it light — medium swing, not heavy",
36
+ "The F# is not a mistake — lean into it, that is the sound"
37
+ ]
38
+ },
39
+ "measures": [
40
+ {
41
+ "number": 1,
42
+ "rightHand": "C4:q D4:q E4:q F#4:q",
43
+ "leftHand": "C3:h E3 G3:h",
44
+ "teachingNote": "CMaj7 — the melody climbs up with F# as the surprise note. This is the 'A Train' sound.",
45
+ "dynamics": "mf"
46
+ },
47
+ {
48
+ "number": 2,
49
+ "rightHand": "G4:h R:h",
50
+ "leftHand": "C3:h E3 G3:h",
51
+ "teachingNote": "CMaj7 continues. G4 resolves the chromatic climb. Let it breathe."
52
+ },
53
+ {
54
+ "number": 3,
55
+ "rightHand": "C4:q D4:q E4:q F#4:q",
56
+ "leftHand": "D3:h F#3 A3:h",
57
+ "teachingNote": "D7 — same melody, but the left hand shifts to D7. The F# now fits both melody and chord!"
58
+ },
59
+ {
60
+ "number": 4,
61
+ "rightHand": "A4:h G4:h",
62
+ "leftHand": "D3:h F#3 A3:h",
63
+ "teachingNote": "D7 continues. Melody peaks at A4 and descends to G4."
64
+ },
65
+ {
66
+ "number": 5,
67
+ "rightHand": "E5:q D5:q C5:q B4:q",
68
+ "leftHand": "D3:h F3 A3:h",
69
+ "teachingNote": "Dm7 — the ii chord. Melody descends from E5. Left hand supports gently.",
70
+ "dynamics": "f"
71
+ },
72
+ {
73
+ "number": 6,
74
+ "rightHand": "A4:q G4:q F4:q E4:q",
75
+ "leftHand": "G2:h F3 B3:h",
76
+ "teachingNote": "G7 — the V chord. Melody continues its descent. Resolution is coming."
77
+ },
78
+ {
79
+ "number": 7,
80
+ "rightHand": "E4:q G4:q C5:h",
81
+ "leftHand": "C3:h E3 G3:h",
82
+ "teachingNote": "CMaj7 — arrival! Melody leaps up to C5 in a classic swing gesture.",
83
+ "dynamics": "mf"
84
+ },
85
+ {
86
+ "number": 8,
87
+ "rightHand": "C5:h R:h",
88
+ "leftHand": "C3:h G3:h",
89
+ "teachingNote": "CMaj7 — rest on the tonic. Clean ending. Ready to loop back to bar 1.",
90
+ "dynamics": "mp"
91
+ }
92
+ ]
93
+ }
@@ -0,0 +1,98 @@
1
+ {
2
+ "id": "the-entertainer",
3
+ "title": "The Entertainer (Theme)",
4
+ "genre": "film",
5
+ "composer": "Scott Joplin",
6
+ "arranger": "Simplified arrangement of the main theme",
7
+ "difficulty": "intermediate",
8
+ "key": "C major",
9
+ "tempo": 100,
10
+ "timeSignature": "4/4",
11
+ "durationSeconds": 30,
12
+ "tags": [
13
+ "joplin",
14
+ "the-sting",
15
+ "syncopation",
16
+ "ragtime-influenced",
17
+ "fun"
18
+ ],
19
+ "source": "Public domain — simplified main theme (famous from 'The Sting')",
20
+ "musicalLanguage": {
21
+ "description": "Scott Joplin's most famous rag, immortalized by the 1973 film 'The Sting'. The main theme features that unforgettable syncopated melody over a steady left-hand stride. This simplified version captures the essential hook — the bouncy, playful character that makes everyone smile.",
22
+ "structure": "Main theme A section (8 bars)",
23
+ "keyMoments": [
24
+ "Bar 1: The iconic pickup and opening — everyone recognizes this instantly",
25
+ "Bars 3-4: The melody leaps up and syncopates — this is the fun part",
26
+ "Bars 7-8: The phrase repeats with a slight variation and resolves"
27
+ ],
28
+ "teachingGoals": [
29
+ "Syncopated melody over steady bass — hand independence",
30
+ "Grace notes and ornamental playing for character",
31
+ "Ragtime left-hand pattern: bass note on 1-3, chord on 2-4"
32
+ ],
33
+ "styleTips": [
34
+ "Playful and precise — ragtime is NOT fast. Joplin wrote 'Not Fast' on his scores.",
35
+ "Left hand absolutely steady: bass-chord-bass-chord",
36
+ "Right hand syncopation should feel cheeky, not rushed"
37
+ ]
38
+ },
39
+ "measures": [
40
+ {
41
+ "number": 1,
42
+ "rightHand": "D4:e E4:e C5:q E4:q C5:q",
43
+ "leftHand": "C3:q E3:e G3:e C3:q E3:e G3:e",
44
+ "fingering": "RH: 1-2-5-2-5, LH: 5-3-1-5-3-1 (stride pattern)",
45
+ "teachingNote": "The famous opening! D-E-C is the pickup that everyone knows. Keep it crisp.",
46
+ "dynamics": "mf"
47
+ },
48
+ {
49
+ "number": 2,
50
+ "rightHand": "D5:e C5:e E4:q C4:h",
51
+ "leftHand": "C3:q E3:e G3:e C3:q E3:e G3:e",
52
+ "fingering": "RH: 5-4-2-1, LH: stride continues",
53
+ "teachingNote": "The melody bounces back down. The charm is in the syncopated rhythm."
54
+ },
55
+ {
56
+ "number": 3,
57
+ "rightHand": "D4:e E4:e C5:q E4:q C5:q",
58
+ "leftHand": "G2:q B2:e D3:e G2:q B2:e D3:e",
59
+ "fingering": "RH: 1-2-5-2-5, LH: 5-3-1 (G chord stride)",
60
+ "teachingNote": "Same melody, different bass chord (G). The left hand shift is subtle but important."
61
+ },
62
+ {
63
+ "number": 4,
64
+ "rightHand": "D5:q C5:q G4:h",
65
+ "leftHand": "G2:q B2:e D3:e G2:h",
66
+ "teachingNote": "Landing on G — a brief moment of repose before the next phrase."
67
+ },
68
+ {
69
+ "number": 5,
70
+ "rightHand": "D4:e E4:e C5:q A4:q C5:q",
71
+ "leftHand": "F2:q A2:e C3:e F2:q A2:e C3:e",
72
+ "fingering": "RH: 1-2-5-3-5, LH: 5-3-1 (F chord stride)",
73
+ "teachingNote": "F major in the left hand — the A in the right hand adds a sweet touch.",
74
+ "dynamics": "f"
75
+ },
76
+ {
77
+ "number": 6,
78
+ "rightHand": "D5:e C5:e A4:q F4:h",
79
+ "leftHand": "F2:q A2:e C3:e F2:h",
80
+ "teachingNote": "Descending through the F chord. Keep the left hand stride rock-steady."
81
+ },
82
+ {
83
+ "number": 7,
84
+ "rightHand": "D4:e E4:e C5:q E4:q C5:q",
85
+ "leftHand": "C3:q E3:e G3:e G2:q B2:e D3:e",
86
+ "fingering": "RH: 1-2-5-2-5, LH: C then G stride",
87
+ "teachingNote": "The main theme returns for the last time. C to G in the bass sets up the ending."
88
+ },
89
+ {
90
+ "number": 8,
91
+ "rightHand": "D5:q E5:e C5:e G4:q C4:q",
92
+ "leftHand": "C3:q E3:q G3:q C3:q",
93
+ "fingering": "RH: 2-3-1-5-1, LH: 5-3-1-5",
94
+ "teachingNote": "The big finish — land firmly on C. Not fast! Joplin would approve.",
95
+ "dynamics": "ff"
96
+ }
97
+ ]
98
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "id": "the-godfather-waltz",
3
+ "title": "The Godfather Waltz",
4
+ "genre": "film",
5
+ "composer": "Nino Rota",
6
+ "difficulty": "intermediate",
7
+ "key": "D minor",
8
+ "tempo": 108,
9
+ "timeSignature": "3/4",
10
+ "durationSeconds": 13,
11
+ "tags": [
12
+ "nino-rota",
13
+ "waltz",
14
+ "italian",
15
+ "minor-key",
16
+ "iconic"
17
+ ],
18
+ "source": "Claude arrangement — simplified interpretation",
19
+ "musicalLanguage": {
20
+ "description": "Nino Rota's waltz from The Godfather evokes old-world Sicilian melancholy with its minor-key 3/4 time. The melody is deceptively simple — a haunting, circling theme that returns obsessively to D. The waltz rhythm in the left hand gives it an elegance that contrasts with the film's dark subject matter, creating that distinctive bittersweet Godfather atmosphere.",
21
+ "structure": "A section: Dm waltz theme (4 bars), B section: ascending to relative major and back (4 bars)",
22
+ "keyMoments": [
23
+ "Bar 1: The opening D minor — dark, elegant, immediately recognizable.",
24
+ "Bar 3: A7 — the dominant with its C# pulling back to D. Circular, obsessive.",
25
+ "Bars 5-6: F major — the brief warmth of the relative major. Fleeting beauty."
26
+ ],
27
+ "teachingGoals": [
28
+ "3/4 waltz time — the ONE-two-three pattern",
29
+ "Minor key waltz character — elegant sadness",
30
+ "Bass-chord-chord waltz left hand pattern"
31
+ ],
32
+ "styleTips": [
33
+ "The waltz should feel old-world — think Sicilian village, not Viennese ballroom",
34
+ "Left hand: bass note on 1, lighter chords on 2 and 3",
35
+ "The melody circles back to D obsessively — let that repetition build atmosphere"
36
+ ]
37
+ },
38
+ "measures": [
39
+ {
40
+ "number": 1,
41
+ "rightHand": "D4:q F4:q E4:q",
42
+ "leftHand": "D3:q A3 D4:q A3 D4:q",
43
+ "dynamics": "mp",
44
+ "teachingNote": "Dm — the waltz begins. Dark and elegant. ONE-two-three."
45
+ },
46
+ {
47
+ "number": 2,
48
+ "rightHand": "D4:q G4:q F4:q",
49
+ "leftHand": "Bb2:q F3 Bb3:q F3 Bb3:q",
50
+ "teachingNote": "Bb major — melody reaches to G4. The waltz sways gently."
51
+ },
52
+ {
53
+ "number": 3,
54
+ "rightHand": "E4:q A4:q G4:q",
55
+ "leftHand": "A2:q E3 A3:q E3 A3:q",
56
+ "dynamics": "mf",
57
+ "teachingNote": "A7 — C# implied in the chord. Tension pulling back to D."
58
+ },
59
+ {
60
+ "number": 4,
61
+ "rightHand": "F4:q E4:q D4:q",
62
+ "leftHand": "D3:q A3 D4:q A3 D4:q",
63
+ "teachingNote": "Dm — the melody descends home. The circle completes."
64
+ },
65
+ {
66
+ "number": 5,
67
+ "rightHand": "A4:q Bb4:q A4:q",
68
+ "leftHand": "F3:q A3 C4:q A3 C4:q",
69
+ "dynamics": "mf",
70
+ "teachingNote": "F major — relative major warmth. Melody lifts to the upper register."
71
+ },
72
+ {
73
+ "number": 6,
74
+ "rightHand": "G4:q A4:q Bb4:q",
75
+ "leftHand": "C3:q G3 Bb3:q G3 Bb3:q",
76
+ "dynamics": "f",
77
+ "teachingNote": "C7 — ascending melody. Building toward the emotional turn."
78
+ },
79
+ {
80
+ "number": 7,
81
+ "rightHand": "A4:q G4:q F4:q",
82
+ "leftHand": "A2:q C#3 E3:q C#3 E3:q",
83
+ "teachingNote": "A7 — the descent begins. C# in bass is the knife's edge."
84
+ },
85
+ {
86
+ "number": 8,
87
+ "rightHand": "D4:h.",
88
+ "leftHand": "D3:q A3 D4:q A3 D4:q",
89
+ "dynamics": "p",
90
+ "teachingNote": "Dm — dotted half note D. The waltz ends where it began. Always D."
91
+ }
92
+ ]
93
+ }