Skip to content

SunderB/sonic-pi-js-api

Repository files navigation

sonic-pi-js-api

An experimental JavaScript API to start and interact with the Sonic Pi server. Compatible with Sonic Pi v4.x.

npm (scoped)

πŸ“– 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

Dependencies

  • node-osc - LGPL 3.0 or later
  • jsdoc (development only) - Apache 2.0 License

License

This package is licensed under the MIT License. See LICENSE.md for the full license.