A lightweight browser-controlled beatmaking system powered by PHP, SuperCollider, and WebSockets.
PHP Beatmaker is an experimental project for building a Koala-like sampler using PHP as a real-time audio control layer.
demo.mp4
- 🎛 Browser UI (Vite / Vue)
- 🔌 WebSocket server (PHP)
- 🎧 OSC bridge (PHP → SuperCollider)
- 🔊 Audio engine (SuperCollider)
Users can trigger samples and patterns from a browser and play them in SuperCollider in real time.
Browser (Vite)
↓ WebSocket
PHP Beatmaker Server
↓ OSC
SuperCollider
- Load WAV samples dynamically
- Trigger pads from browser
- Real-time WebSocket control
- OSC-based audio engine control
- Extensible message-based protocol
{ "type": "play", "pad": "pad1" }{ "type": "load", "pad": "pad1", "path": "/samples/kick.wav" }Communication is handled via OSC:
- /load → load sample into buffer
- /play → trigger sample playback
- PHP 8.1+
- ReactPHP
- Ratchet WebSocket
- OSC (UDP)
- SuperCollider
- Vite (frontend)
The goal of PHP Beatmaker is to create a web-based beatmaking instrument:
- sample pads like Koala
- pattern sequencing like Strudel
- controlled entirely from the browser
Early prototype:
- OSC communication working
- sample loading working
- basic playback working
- WebSocket layer working
MIT