This is a demo project developed for the CodicePlastico Winter Company Meeting 2024 Workshop. The main goal is to explore the potential of the Web Audio API by creating an interactive music visualizer.
- Interactive visualization of audio files.
- Supports local MP3 file uploads.
- Animations synchronized with the audio playback.
- HTML, CSS, and Vanilla JavaScript for the frontend.
- Web Audio API for audio analysis and visualization.
- Canvas API for rendering visual elements.
- jsmediatags for extracting media tags from audio files.
- Browser Sync for local development server.
To run this project locally, you need:
- Node.js installed on your system.
- A modern web browser (e.g., Chrome, Firefox, Edge).
-
Clone the repository:
git clone git@github.com:davidebrognoli/music-visualizer.git
-
Navigate to the project directory:
cd music-visualizer
-
Install dependencies:
npm install
-
Start the development server:
npm start
-
Open your browser and navigate to:
http://localhost:3000
-
Upload a local MP3 file and enjoy the visualization.
public/
├── index.html # Main HTML file
├── style.css # Styling for the visualizer
├── script.js # JavaScript logic for visualization
- This is a demo project and has not been extensively tested for all edge cases.
- The visualizer might not work as expected with certain audio formats or very large files.
Contributions are welcome! If you find a bug or have a suggestion, please open an issue on GitHub.
This project is licensed under the ISC License. See the LICENSE file for more details.
Developed with ❤️ by Davide Brognoli.