Rowdy Rabouw
Beats in the Browser: Coding Music with JavaScript
#1about 7 minutes
The history and cultural impact of Roland drum machines
Roland's TR-808 and TR-909 drum machines were commercial failures that later became iconic in hip-hop and dance music.
#2about 3 minutes
Generating basic sounds in the browser with Web Audio API
The Web Audio API allows for sound generation in the browser using an AudioContext and an oscillator node to create simple waveforms.
#3about 3 minutes
Simplifying audio playback in the browser with Tone.js
Instead of complex synthesis, use WAV files and the Tone.js library to easily load and play audio samples with minimal code.
#4about 6 minutes
Connecting physical MIDI controllers using the Web MIDI API
The Web MIDI API enables browsers to receive messages from physical hardware like keyboards and drum pads to trigger in-browser events.
#5about 7 minutes
How to build a step sequencer in JavaScript
A step sequencer can be built using HTML checkboxes for the interface and the Tone.js scheduling feature to loop through and play selected notes.
#6about 4 minutes
Controlling music tempo with the Web Bluetooth API
The Web Bluetooth API can connect to low-energy devices like a heart rate monitor to dynamically control application parameters like music tempo.
#7about 3 minutes
A live karaoke demo and concluding thoughts
A fun demonstration combines the browser-based drum machine with karaoke, followed by a look back at early DJing experiences.
Related jobs
Jobs that call for the skills explored in this talk.
Senior Fullstack Engineer – Angular/.Net (f/m/d)
Apaleo
München, Germany
Remote
€65-85K
Senior
JavaScript
.NET
+2
Matching moments
56:55 MIN
Building music sequencers with the Web Audio API
New Browser APIs, End of React Create App, Smuggling Data in Emoji and more with Rowdy Rabouw
30:26 MIN
Combining a drum machine with karaoke for a live performance
Beats in the Browser: Coding Music with JavaScript
19:01 MIN
Building a step sequencer using Tone.js for looping beats
Beats in the Browser: Coding Music with JavaScript
12:48 MIN
Triggering browser audio with the Web MIDI API
Beats in the Browser: Coding Music with JavaScript
06:58 MIN
Creating basic sounds with the Web Audio API
Beats in the Browser: Coding Music with JavaScript
29:07 MIN
Creative web tech for music notation and modern CSS
WeAreDevelopers LIVE - Dapr / Pixels and Generative Art / Open Source and Communities / and more
26:10 MIN
Using the Web Bluetooth API to control music tempo
Beats in the Browser: Coding Music with JavaScript
00:39 MIN
Connecting hardware prototypes to the browser
Prototyping with Hardware and the Web
Featured Partners
Related Videos
Beats in the Browser: Coding Music with JavaScript
New Browser APIs, End of React Create App, Smuggling Data in Emoji and more with Rowdy Rabouw
Chris Heilmann & Daniel Cranney & Rowdy Rabouw
Catching up on the basics you don't really need that much code
Chris Heilmann
Using all the HTML, Running State of the Browser and "Modern" is Rubbish
Chris Heilmann & Daniel Cranney and David Letorey
The Eventloop in JavaScript - How does it work?
Christian Woerz
Building a Browser-Based Karaoke Game with Web Speech API
Ana Rodrigues
WeAreDevelopers LIVE – Frontend Inspirations, Web Standards and more
Chris Heilmann, Daniel Cranney & Jan Deppisch
Prototyping with Hardware and the Web
George Cave
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

Remote Fullstack Dev - Real-Time Web Apps (Node/Deno)
BoraBora GmbH
Barcelona, Spain
React
MongoDB
Node.js



Javascript Developer Job
Frontend Revolution
Amsterdam, Netherlands
Angular
JavaScript
Test Driven Development


{"@context":"https://schema.org/","@type":"JobPosting","title":"Software Developer
Live Wire
Python
Unreal Engine

Frontend Web Developer - JavaScript | React | Angular | Vue.js | Bootstrap | Tailwind | HTML | CSS
Tech Solutions Gmbh
Berlin, Germany
API
CSS
GIT
HTML
Scrum
+5


Frontend Web Developer - JavaScript | React | Angular | Vue.js | Bootstrap | Tailwind | HTML | CSS
Tech Solutions Gmbh
Brandenburg an der Havel, Germany
API
CSS
GIT
HTML
Scrum
+5