sonic-pi-js-api
An experimental JavaScript API to start and interact with the Sonic Pi server. Compatible with Sonic Pi v4.x.
📖 Documentation
Documentation is available online at https://sunderb.me/sonic-pi-js-api/latest/
✨ Features
Feature | Implemented? |
---|---|
Booting | |
Boot and initialise the server | ✅ Yes |
Shutdown the server | ✅ Yes |
Basic commands | |
Run code | ✅ Yes |
Stop all jobs | ✅ Yes |
Buffers/workspaces | |
Load workspaces | 🚧 Partial |
Save workspaces | ✅ Yes (untested) |
Save and play buffer | ✅ Yes (untested) |
Buffer new line and indent | ✅ Yes (untested) |
Recordings | |
Start recording | ❌ No |
Stop recording | ❌ No |
Logging | |
Handle and emit log messages | ✅ Yes |
Handle and emit errors | 🚧 Partial |
Options & IO | |
Main volume | ✅ Yes |
Safe mode | ❌ No |
External synths | ✅ Yes |
MIDI options | 🚧 Partial |
Link | ❌ No |
Attributions
- Heavily based on on the official C++ Sonic Pi API (although not a fully exact copy) - MIT License
Dependencies
License
This package is licensed under the MIT License. See LICENSE.md for the full license.