Click a composer. Hear something new. Learn why it sounds that way.
A dark concert-hall web app that generates original instrumental music inspired by Bach, Vivaldi, Mozart, Beethoven, and Chopin — then teaches you what makes each style different.
Live demo: https://assafbar2.github.io/composer-muse/
Handoff for agents / new sessions:HANDOFF.md· Share copy:docs/SOCIAL.md
Classical “style” is often treated as one blob: piano, old, fancy. It isn’t.
- Bach builds architecture — interlocking lines (counterpoint) on a Baroque keyboard.
- Vivaldi paints outdoors — solo brilliance over a motor string orchestra.
- Mozart smiles in balanced phrases — Classical clarity and Alberti bass.
- Beethoven kicks the door — short motifs, silence, storm, hard-won light.
- Chopin confesses at the piano — singing melody, arpeggios, rubato, chromatic color.
Composer Muse was built so you can hear that difference, not only read about it. Each name is a dedicated style engine (rules for texture, harmony, tempo, and real instrument samples), not one generic “classical” generator with a sticker on it.
Music is original and generative — inspired by historical languages, never a transcription of a famous work. No API key. Runs in the browser.
- Open the live hall.
- Click Chopin (first load may fetch piano samples for a few seconds).
- Click Vivaldi — strings, not the same piano patch.
- Read the Style classroom panel: hallmarks, “vs others,” and what to listen for.
| Area | What you get |
|---|---|
| Program | Five composer cards first — primary CTA, no scroll — click = compose + play |
| Sound | Real samples: piano / organ / violin+cello+contrabass |
| Education | Style classroom + techniques after you pick; era timeline below the main event |
| Aesthetic | Dark concert hall — gold, ivory, vignette |
| Privacy | No account; optional lightweight visit counter (see below) |
| Composer | Era | Sounds like | Engine focus |
|---|---|---|---|
| Bach | Baroque | Pipe organ | Imitation, sequences, steady pulse |
| Vivaldi | Baroque | String orchestra | Ritornello, motor rhythm, solo line |
| Mozart | High Classical | Solo piano | Balanced phrases, Alberti bass |
| Beethoven | Classical → Romantic | Solo piano | Motif, contrast, drama |
| Chopin | Romantic | Solo piano | Cantabile melody, arpeggios, rubato |
- Vite + React + TypeScript
- Tone.js — scheduling +
Tone.Sampler - Samples — tonejs-instruments (CDN)
- Host — GitHub Pages (free)
- No music cloud API or server-side keys
git clone https://github.com/assafbar2/composer-muse.git
cd composer-muse
npm install
npm run devOpen the URL Vite prints. Production build:
npm run build
npm run previewvite.config.ts sets base: '/composer-muse/' for GitHub Pages.
The live site shows a small hits badge in the footer via a free public counter service (no cookies, no account required on our side). Approximate — good enough to see if anyone’s walking into the hall.
Repo traffic (clones, views of the GitHub page) is also free under Insights → Traffic on this public repo.
Contributions and forks welcome. High-value directions:
- Better composition — clearer motifs, stronger cadences, less note-soup on tutti bars
- Richer samples — denser piano map, harpsichord for Bach, winds for Vivaldi
- Mood chips — gentle / stormy / triumphant without leaving the one-click flow
- Export — download WAV / MIDI of the sketch
- A/B classroom — same seed idea through two engines side by side
- More composers — Debussy, Joplin, Satie, Hildegard, … with new engines
- Optional LLM layer — titles/blurbs via an API; keep samples as the sound source
- PWA — installable concert hall offline after first sample cache
See also backlog notes in HANDOFF.md.
src/
data/composers.ts # eras, education, accents
music/generators.ts # style engines
music/samples.ts # instrument samples
music/engine.ts # play / stop
components/ # cards, player, classroom, timeline
docs/
SOCIAL.md # ready-to-post social copy
HANDOFF.md # full agent / resume doc
Original generative sketches inspired by historical musical languages. Not affiliated with any estate, publisher, or recording label. Not reconstructions of copyrighted or canonical works by title.
MIT — see LICENSE. Use, fork, teach, remix.