What You'll Build
A working local copy of Pigment, an open source music visualizer that listens to music and turns it into animated liquid paint, sacred geometry, sand physics, and organic growth. Play a song, sing, or clap, and watch your screen paint itself. Then Claude helps you create your own personal version.
Before You Start
Make sure you have completed the Mac Setup or Windows Setup guide.
How It Works
This lesson is powered by one super prompt. You paste it into Claude Code and it does everything: checks your computer, safely clones the project, verifies the files, starts a local server, opens the visualizer in your browser, and then guides you through remixing it into something that is completely yours.
Get the Super Prompt
Enter your first name and email and the full copy and paste super prompt unlocks right here on this page.
Step 1: Start Claude
Open your terminal and start Claude Code:
claude
Step 2: Paste the Super Prompt
Hit copy on the block below, paste the whole thing into Claude, and press enter. Then sit back and watch it work.
You are my hands-on setup partner. I want a working local copy of Pigment, an open-source music visualizer that listens to music and turns it into animated liquid paint, sacred geometry, sand physics, and organic growth.
Repository:
https://github.com/nicksarafa/music-visualizer.git
Your job is to safely clone it, run it, verify it, and help me create my own version.
IMPORTANT WORKING RULES
- Take action using the terminal, do not merely give me a list of instructions.
- Explain what you are doing in short, beginner-friendly updates.
- Never delete or overwrite an existing folder or uncommitted work.
- Never use sudo or install software without asking me first.
- Never commit or push to the original creator's repository.
- If something fails, investigate it and try a safe alternative.
- Keep the application local to my computer.
- Use the repository's README and AGENTS.md instructions when present.
- This project has no build step and should not need npm install.
PHASE 1: CHECK MY COMPUTER
1. Identify my operating system and current folder.
2. Check whether Git is installed.
3. Check for Python using `python3` and then `python`.
4. Check whether Node.js is installed, but do not require it to run the artwork.
5. Choose a sensible user-owned installation location:
- Prefer a Projects folder in my home directory.
- Use a different folder if I tell you where I want it.
- If the destination is ambiguous or already occupied by unrelated files, ask me one concise question before continuing.
6. If a required tool is missing, explain exactly what is missing and ask before installing anything.
PHASE 2: CLONE SAFELY
Clone the repository into a folder named `music-visualizer`:
`git clone https://github.com/nicksarafa/music-visualizer.git`
Then:
1. Enter the new repository.
2. Check out the `main` branch.
3. Show me the current commit.
4. Confirm that these important files exist:
- `index.html`
- `engine.js`
- `README.md`
- `skins/`
5. If `music-visualizer` already exists:
- Do not overwrite it.
- Check whether it is already this repository.
- If it is clean, update it using a fast-forward-only pull.
- If it contains changes, preserve them and ask me before pulling or merging.
PHASE 3: VERIFY THE PROJECT
Perform safe checks before launching:
1. If Node.js is available, run:
- `node --check engine.js`
- Syntax checks for the JavaScript files inside `skins/`
2. Only run `node tests/movement-smoke.cjs` if the local `solar-drift-a.wav` and `solar-drift-b.wav` files exist. Those evaluation tracks may not be included in a fresh clone.
3. If the WAV files are absent, do not treat that as a failure: the application includes its own browser demo.
4. Report any genuine syntax errors clearly and fix only repository-related issues that are safe and obvious.
PHASE 4: START THE VISUALIZER
The microphone needs the project to run from localhost; do not open `index.html` using a `file://` URL.
1. Find an available local port, starting with 8477.
2. Prefer:
- `python3 -m http.server PORT`
- or `python -m http.server PORT`
3. If Python is unavailable, ask before using a fallback that downloads or installs anything.
4. Start the server from inside the repository and keep it running.
5. Verify that the homepage and `engine.js` load successfully.
6. Open the correct localhost URL in my default browser when possible.
7. Clearly display the URL so I can open it myself if automatic opening is unavailable.
PHASE 5: HELP ME EXPERIENCE IT
Once it is open, tell me to:
1. Click "or watch the demo" for an immediate no-microphone experience.
2. Open the controls panel.
3. Try these movement options:
- Liquid Bloom
- Sacred Rose
- Living Sand
- Vitruvian Grove
4. Try different options in the separate Paint dropdown.
5. Click "begin listening" and grant microphone permission if I want live music visualization.
6. Play music, sing, clap, or use an instrument near the microphone.
7. Use these keyboard shortcuts:
- `c` to clear
- `s` to save the painting
- `f` for fullscreen focus mode
- `r` to record
- `[` and `]` to change paint
- `{` and `}` to change movement
PHASE 6: CREATE MY PERSONAL VERSION
After the original version is running successfully:
1. Create a local branch named `my-version`.
2. Do not change the original `main` branch.
3. Ask me this question:
"What should your version feel like: liquid, cosmic, botanical, geometric, dreamlike, dark, bright, minimal, or something else?"
4. Based on my answer, propose three specific visual directions.
5. Let me choose before making major design changes.
6. Preserve the core promise that the same musical chords produce consistent color families.
7. Keep movement and paint as separate systems.
8. Test any changes before declaring them complete.
9. Do not push anywhere unless I explicitly ask.
10. If I later want my own GitHub repository, help me fork or create one safely without attempting to push to the original repository.
SUCCESS CRITERIA
Do not declare success until:
- The repository exists locally.
- The important project files are present.
- Syntax checks pass, when the necessary tools are available.
- A localhost server is running.
- The homepage and engine load successfully.
- I have a clickable local URL.
- You explain how to launch it again later.
- You explain how to stop the server.
- You tell me the exact folder where my copy lives.
At the end, give me a concise summary containing:
- Installation folder
- Local URL
- Current branch
- Verification results
- How to restart it
- How to stop it
- The first three visual combinations you recommend trying
Begin now.
Step 3: Make It Yours
Once the visualizer is running, Claude will ask what your version should feel like: liquid, cosmic, botanical, geometric, dreamlike, dark, bright, or minimal. Pick a direction, choose one of the three designs it proposes, and you will have a music visualizer no one else in the world has.
What You Learned
You used a single well-written super prompt to have Claude clone, verify, launch, and remix a real open source project. This same pattern works for any repository on GitHub: clear working rules, phased steps, and success criteria that Claude must meet before declaring the job done.