Patch it. Code it. Loop it.
wicktone is a music studio built from nodes and code. Wire synths, drum machines and effects like a modular rig, type rhythms like a programmer and remix everything while it loops.
- Palette36 nodes. Drag one in or double click the canvas.
- PatternRhythms in mini notation, edited while they play.
- LFOA modulation cable sweeps the filter of the synth.
- OutputLevel and spectrum. Hit Rec to bounce a WAV.
Three ways in
Drag it, type it, jam it.
Start with cables and end up in code, or the other way round. Both views drive the same patch, and the music never stops while you switch.
Wire a beat
Drag a Pattern into a Mono Synth, the synth into a Delay and the Delay into the Output. That is a bassline. Every cable carries a real signal you can reroute while it plays.
Type a beat
Rather type? The whole patch is JavaScript. Press Ctrl Enter and only what changed updates, so the groove keeps rolling.
Play it live
Everything loops, locked to the bar. Mute parts, twist knobs and swap patterns on the fly. Quantize lands every change right on the beat.
How it works
Three cables. One grammar.
Generators make notes, instruments turn them into sound, effects shape it and modulators move the knobs. Only matching sockets connect, so nothing ever breaks.
-
Pattern
Mono Synth
Notes Rhythm and pitch, from patterns, sequencers and arpeggiators into instruments.
-
Mono Synth
Delay
Audio Real sound, from synths and samples through effects to the Output.
-
LFO
Cutoff knob
Modulation LFOs, envelopes and macros, dropped straight onto any knob.
For people who think in code
Rhythm is just a string.
wicktone speaks the mini notation of Strudel and TidalCycles: bd*4 is four kicks,
bd(3,8) a euclidean groove and <c3 e3 g3> changes every bar. Then go full
JavaScript, with one function per node, .to() for cables and autocomplete everywhere.
bpm(134) const drums = drumMachine({ kickTune: 46 })pattern('bd*4, ~ cp ~ cp').to(drums)drums.to(compressor({ ratio: 4 })).to(out) // 303 vibes: :a is an accent, :s a slideconst acid = monoSynth({ cutoff: 110, resonance: 9 })pattern('<a1 a1:a a2:s c2>').to(acid)lfo({ rate: '4' }).mod(acid.cutoff)acid.to(delay({ pingpong: true })).to(out)
- bd(3,8)
- euclidean rhythm
- hh?
- random drop
- c3, e3, g3
- stack, a chord
- {a b c}%4
- polymeter
- a1:s
- slide into the next note
No code yet? Open code mode on any patch and wicktone writes it for you. The best way to learn.
Click the grid and the pattern rewrites itself.
Under the hood
Small app. Deep rabbit hole.
Everything a jam session needs, built straight into the browser. No plugins, no installs, no waiting.
-
Knobs that drawDisplays Knobs that draw
Filter curves, envelopes, LFO shapes, echo taps and piano rolls redraw as you tweak and move while it plays.
-
Never out of syncClock Never out of sync
Patterns, sequencers, LFOs and loops are locked to the bar grid. Change the tempo during a jam and everything stays on the beat.
-
Acid ready synthsInstruments Acid ready synths
A mono synth with 303 style accents and slides, an FM synth, a poly synth and an 808 style drum machine.
-
Your own soundsSources Your own sounds
Drop audio files on the canvas, then trim, reverse, loop and fit them to the tempo. Or plug in your microphone.
-
Record to WAVRecorder Record to WAV
Hit Rec and bounce the master output straight to a WAV file, ready for any DAW.
-
Undo everythingHistory Undo everything
Every knob turn, cable, mute and code run is one undo step. Experiment without fear.
-
Your stuff stays yoursStorage Your stuff stays yours
Projects autosave in your browser. Export one JSON file with the samples inside to share it or back it up.
-
Sandboxed scriptsWorker Sandboxed scripts
Code runs in a Web Worker with a three second limit, so
while(true)can never freeze your jam.
The toolbox
36 nodes to plug together.
Sequencers, synths, samplers, effects and modulators, each with knobs you can grab or wire an LFO into. Double click the canvas to add one, or drop a cable into empty space and wicktone offers what fits.
Note generators
- Pattern
- Step Sequencer
- Drum Sequencer
- Euclidean
- Random Melody
Note effects
- Arpeggiator
- Chord
- Transpose
- Chance
Instruments
- Poly Synth
- FM Synth
- Mono Synth
- Drum Machine
- Sampler
Audio sources
- Oscillator
- Noise
- Audio Player
- Microphone
Audio effects
- Filter
- Delay
- Reverb
- Distortion
- Bitcrusher
- Chorus
- Phaser
- Compressor
- EQ
Modulation
- LFO
- Envelope
- Macro
- Random (S&H)
Utilities
- Mixer
- Gain / Pan
- Scope
- Comment
- Output
Your next loop is one click away.
Open the studio, press Space and start twisting knobs. The demo song is already waiting.
Open the studio