Sign in in the app

Sign in needs a Fizz FM account, and for now accounts live in the iPhone app. Sign in there to follow makers, love tracks, post remixes and fill your Following feed. Signing in on the web is coming.

What is Fizz?

Fizz is a programming language for LLMs to create and remix music.

A track is a few readable lines: tempo, key, chords, and one line per instrument. Notes are numbers in the key, so nothing plays out of key. In our tests, models write it correctly about 29 times in 30 on the first try, and most edits change a single line. Every track on Fizz FM is written in Fizz, and your coding agent can write them too.

Try it

Change a step, a chord or an instrument, then press Play. Highlighted lines are the instruments playing right now.

No errorsRuns in your browser on the Fizz FM engine

One change at a time

You change a track the way you change code: a line or two at a time, and every step plays. That's why models get edits right, and why you can read exactly what they changed. Pick a step, press Play, and switch steps while it plays to hear each change come in on the beat.

Step 1: Start with a lo-fi loopThe first version
fizz score v1bpm 82key F majorswing 0.33 section loop bars=4  chords: Imaj7 vi7 ii7 V7  kick kit_bd gain=0.8 : x... ...x ..x. ....  snare kit_sd gain=0.5 room=0.15 : .... x... .... x...  hat kit_hh gain=0.3 hpf=300 : x.x. x.xx x.x. x.x.  pad epiano octave=3 gain=0.4 room=0.35 : x... .... ..x. ....  lead marimba octave=4 gain=0.35 room=0.4 delay=0.2 :    1| 3 . 5 . 7 . 5 . . . 3 . 1 . . .    2| 3 . 5 . 6 _ . 5 . . 3 . 1 . . .    3| 4 . 6 . 1' . 6 . . . 4 . 6 . . .    4| 2 . 4 . 5 _ _ . . . . . 7, . . .
Runs in your browser on the Fizz FM engine

Fizz in five parts

Enough to read any track. Your agent learns the rest from the skill.

Layers

Each instrument gets one line: a name (kick, bass, lead…), a sound, then its settings.

kick kit_bd gain=0.8 : x... ..x. x... ....
bass finger_bass octave=2 : x... .... x... ..x.

Patterns

Each bar is 16 steps. x is a hit, . is a rest, _ holds the note, and | starts the next bar.

hat kit_hh : x.x. x.xx x.x. x.x. | x.x. x.x. x.xx x.x.
pad warm_pad : x___ ____ ____ ____

Chords

Chords are numbered by where they sit in the key: I is the first, vi the sixth, and lowercase means minor. :2 makes a chord last two bars.

key A minor
chords: i:2 VI:2 III:2 VII:2

Sections

Name each part and set its length in bars. Layers can drop in or out between sections.

form: verse chorus
section verse bars=8
section chorus from=verse drop=kick

Expression

Notes are numbers in the key (1 is the root). Add ' to go up an octave and , to go down. Shape the sound with gain, filters, reverb and delay.

lead kalimba gain=0.35 room=0.4 delay=0.2 : 3 . 5 . 6 . 1' . 5, . . . . . . .

What you can build

Soundtracks for apps and games

An agent writes a loop for the scene, and you change the tempo or swap the lead in one line.

A music bot

Users say “make it darker” or “add a bassline”, and your model sends back a small change instead of a new track.

Music for your content

A background track for every video, story or level, embedded with the Fizz player.

Install the Fizz skill

Your coding agent can then write and remix tracks. It works with Claude Code, Cursor, Codex and other agents that use skills. The CLI checks a track and reports errors by line, so your agent can fix them itself.

Install the skill
npx skills add hypersocialinc/fizz
Install the CLI
npm i -g @hypersocial/fizz && fizz check track.fizz

Connect your assistant

Add Fizz FM to Claude or ChatGPT and ask for a beat. The assistant makes it with Fizz FM's composer, which checks every note, and you get a link that plays and jams in any browser. Where the app supports it, the player opens right in the chat. Free to try, with a few AI tracks a day.

Server URL
https://fizz.fm/api/mcp

Claude

  1. Open Settings, then Connectors.
  2. Choose Add custom connector, name it Fizz FM and paste the server URL.
  3. In a new chat, turn on Fizz FM from the tools menu.

ChatGPT

  1. Open Settings, then Apps & Connectors, and turn on developer mode under Advanced.
  2. Choose Create, name it Fizz FM, paste the server URL and pick No authentication.
  3. In a new chat, add Fizz FM from the + menu.
Then ask
Make me a slow lo-fi beat in F minor with a soft kalimba hook.

Coming soon: sign in with your Fizz FM account to use your own credits and post to your profile.

Embed a track

Add the Fizz player to your site with one script tag, then point it at any Fizz FM track or your own Fizz. See the player reference for attributes, theming and the JavaScript API.

index.html
<script src="https://fizz.fm/player.js"></script>
<fizz-player track="tidal-arpeggio"></fizz-player>

Strudel export and import

Strudel is a live-coding music language. Fizz converts both ways.

Export as Strudel

Turn any track into Strudel code you can paste into strudel.cc. Use Export as Strudel in the editor above, or run fizz export --strudel.

Import from Strudel

Turn Strudel code into a Fizz track you can edit and play: fizz import track.js.

Come play with us

Good things start with hello.

Fizz FM is in a free beta on iPhone through Apple’s TestFlight. Leave your email and we’ll send you an invite.

We use your email to send the invite, and news only if you tick the box. Ask us to delete it any time. See our Privacy policy.