
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@potato/root
Advanced tools

Root is a library of web components that provide an intuitive framework for experimenting with synthesised sound by leveraging the Web Audio API. Root is built with modularity at its core; individual components, such as different controls (eg. faders and buttons), can be combined to create modules, which in return can be combined together to create instruments and other tools for sonic experimentation and expression.
Root is an open-source project created by Potato Labs, an innovation hub at the digital product studio Potato.
Read the Storybook documentation here.
To use Root in your project, first install it with npm.
npm install @potato/root
Next, import the components you want to use in your project. For example, the following imports and displays the Synth component.
<script type="module">
import '@potato/root/components/synth';
</script>
<root-synth></root-synth>
See the Build with Root section below for tips on how to get started.
Root comes with a demo that you can run locally. This is a great way to see how components work together before using Root in your own project.****
To try this out, first clone this repository, then use npm to install the dependencies and start the development server.
git clone https://github.com/potatolondon/root.git root
cd root
npm install
npm start
Routing audio to and from Root modules is inspired by conventional modular synthesisers. You can generate “virtual cables” between different Root modules by using the sendTo and receiveFrom attributes.
The example below demonstrates a simple setup where the output of the oscillator module is routed into the filter, which then sends the signal to the main output, allowing the resulting audio to be heard through the system’s output (eg. speakers or headphones).
<root-connect>
<root-osc id="osc-1" sendTo="filter-1"></root-osc>
<root-filter
id="filter-1"
sendTo="output"
recieveFrom="osc-1"
></root-filter>
</root-connect>
Contributing to Root is easy. Check the open issues – bugs and features labelled with good first issue are suitable for newcomers. Make sure to follow the linting and formatting guidelines below, and generate a build to test your changes. When you are ready, create a pull request and one of the team will review your work.
To scan the project for linting and formatting errors, run
npm run lint
To automatically fix linting and formatting errors, run
npm run format
All components in Root come with tests. To run the whole test suite, run
npm test
As well as running the tests, it’s also useful to create a production build to check your work. To do this, run
npm run build
FAQs
Web Audio Component Library
We found that @potato/root demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.