Pick a depth. Each prompt opens in your AI pre-loaded with the lesson. Click a row to preview the prompt.
Before you generate anything, you need a personal reference library — 20 tracks you love, with specific notes on WHY. This is not a nostalgia playlist; it's your ear-training corpus. Every AI prompt session, you'll pull a reference track from this library and prompt 'in the vein of X but with Y different' — this reference-driven prompting produces dramatically better results than vibes-based prompting. Music professionals do this reflexively; hobbyists rarely do. Ten minutes now saves a hundred hours later.
A structured library template: 20 tracks, each with genre, tempo, mood, and the ONE specific thing you love. Reference this before every session.
# Your reference library. Fill in your own 20; delete these placeholders.
library = [
{"track": "Cornelius — Drop", "genre": "shibuya-kei", "bpm": 105,
"mood": "playful, obsessive", "love_this": "the water-drop sample as a rhythmic element"},
{"track": "Aphex Twin — Xtal", "genre": "ambient techno", "bpm": 116,
"mood": "washed-out melancholy", "love_this": "how the pad chord shifts imperceptibly"},
{"track": "Nujabes — Aruarian Dance", "genre": "jazzy hip-hop", "bpm": 85,
"mood": "warm, contemplative", "love_this": "the harp sample against the boom-bap"},
# ... add 17 more
]
# Prompt template that uses the library
def prompt_from_reference(ref, twist: str) -> str:
r = library[ref] if isinstance(ref, int) else next((x for x in library if x["track"] == ref), None)
return f"{r['genre']}, {r['bpm']} BPM, mood: {r['mood']}, use {r['love_this']}, but {twist}"
print(prompt_from_reference("Cornelius — Drop", "add distorted breakbeats in the second half"))
python3 main.py