A drum machine web app that allows you to create musical patterns and save them as presets.
In this project, I wrote functions to implement logic for a beat-making music machine.
The application can loop over a 16-step grid of four drum types and play them when they are activated.
I also wrote the functionality to invert each row of drums, clear each row of drums, or clear the entire board.
Finally, I build the functionality to retrieve and save presets to a server.
▶ You can view a video demonstration of the final app here: BeatMix
As a bonus, I implemented a function to play multiple synthesizer tones at once.
- "body-parser": "^1.17.2",
- "chai": "^4.1.1",
- "chai-things": "^0.2.0",
- "cors": "^2.8.4",
- "express": "^4.15.4",
- "mocha": "^5.1.1",
- "morgan": "^1.8.2",
- "nodemon": "^1.11.0"
Run npm install
to install the dependencies of this project.
$ npm install
Run npm run start
to begin your server. You'll see Server listening on port 4001
in the terminal.
$ npm run start
To see the application simply open index.html in a web browser.
This project comes from the Codecademy's Create a Back-End with JavaScript course.