Welcome to RhythmLab, an interactive drum machine web app that allows you to create beats, experiment with different sounds, and enjoy music production like never before. Whether you're a seasoned drummer, an aspiring musician, or just someone who loves rhythm, RhythmLab has everything you need to unleash your creativity.
- Interactive Drum Pads: Tap, click, or use your keyboard to trigger sounds.
- Sound Variety: Multiple drum sounds including Kick, Snare, Hi-Hat, Tom, Crash, Ride, Splash, and more!
- Volume Control: Adjust the volume of your beats for the perfect sound.
- Power On/Off: Turn the app on or off with ease.
- Responsive Design: Works perfectly on both desktop and mobile devices.
- Customizable Colors: Enjoy a visually pleasing interface with vibrant and lively colors that match your musical vibe.
- Kick 🥁
- Snare 🥁
- Hi-Hat 🥁
- Tom 🥁
- Crash 🥁
- Ride 🥁
- Splash 🥁
- And More!
Feel free to add your own collection of sounds as well!
- Play Sound by Clicking: Simply click on any of the drum pads to trigger a sound.
- Use Keyboard: Press the corresponding keys (Q, W, E, A, S, D, Z, X, C) on your keyboard to trigger the drum sounds.
- Adjust Volume: Use the volume slider to control how loud the beats sound.
- Turn Off/On Power: Toggle the power switch to turn the drum machine on or off.
- Create and Have Fun: Get creative and make your own beats.
RhythmLab has been designed with responsiveness in mind, meaning it will work seamlessly across all devices, from desktops to mobile phones. Play anywhere, anytime, and keep your rhythm going!
To run this project on your local machine, follow these simple steps:
Clone the repository to your local machine:
git clone https://github.com/cyriacjohn/rhythm-lab.git
- Install Dependencies Navigate to the project directory:
cd rhythm-lab
Then, install the necessary dependencies using npm:
bash
npm install
- Start the Development Server Start the app locally:
npm start
Now, open http://localhost:3000 in your browser to start playing with your beats!
- React: For building the interactive user interface.
- CSS Grid & Flexbox: For the layout and responsive design.
- JavaScript: For handling logic and sound playback.
- HTML5 Audio API: For playing the drum sounds.
- Ability to save and share your beats.
- More sound effects and custom sound packs.
- Integration with music production tools and services.
- Record and export your rhythms for later use.