You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

react-wave-audio-player

Package Overview
Dependencies
Maintainers
0
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-wave-audio-player

A customizable React audio player component with TypeScript and Tailwind CSS.

1.0.3
latest
Source
npmnpm
Version published
Weekly downloads
49
48.48%
Maintainers
0
Weekly downloads
 
Created
Source

React Wave Audio Player Preview

React Wave Audio Player

A customizable React audio player built with TypeScript, Tailwind CSS, and WaveSurfer.js. This package provides a fully responsive and visually appealing audio player with waveform visualization.

🚀 Features

  • 🎵 Waveform Visualization using WaveSurfer.js
  • 🎨 Customizable Colors & Styles (progress bar, cursor, buttons, etc.)
  • 🎚️ Adjustable Volume & Playback Speed
  • Play/Pause, Mute/Unmute Controls
  • 📥 Audio Download Button
  • Works with Tailwind CSS for styling

📦 Installation

1. Install the package

npm install react-wave-audio-player

2. Install required peer dependencies

Since this package depends on react, react-dom, tailwindcss, wavesurfer.js, and react-icons, ensure they are installed in your project:

npm install react react-dom tailwindcss wavesurfer.js react-icons

3. Configure Tailwind CSS (If not already set up)

If you haven't set up Tailwind CSS, follow the official documentation:

🔗 Tailwind CSS Setup: Using Tailwind with Vite

📖 Usage

Basic Example

import React from "react";
import { AudioPlayer } from "react-wave-audio-player";

const App = () => {
  return (
    <div className="p-4">
      <AudioPlayer src="/audio/sample.mp3" />
    </div>
  );
};

export default App;

Customizing the Player

<AudioPlayer
  src="/audio/sample.mp3"
  waveColor="#a3aed0"
  progressColor="#3311db"
  cursorColor="blue"
  buttonsColor="#ff5722"
  barWidth={3}
  barRadius={2}
  barGap={1}
  height={80}
  playIcon={<YourCustomPlayIcon />}
  pauseIcon={<YourCustomPauseIcon />}
  volumeUpIcon={<YourCustomVolumeIcon />}
  volumeMuteIcon={<YourCustomMuteIcon />}
  playbackSpeeds={[0.5, 1, 1.5, 2]}
  onPlay={() => console.log("Playing")}
  onPause={() => console.log("Paused")}
  onVolumeChange={(vol) => console.log("Volume: ", vol)}
/>

🎨 Props & Customization

PropTypeDefaultDescription
srcstringRequiredURL of the audio file
waveColorstring"#a3aed0"Color of waveform
progressColorstring"#3311db"Color of progress bar
cursorColorstring"blue"Color of cursor
buttonsColorstring"#3311db"Color of control buttons
barWidthnumber2Width of waveform bars
barRadiusnumber2Radius of waveform bars
barGapnumber1Gap between waveform bars
heightnumber100Height of the waveform
playIconReactNode<FaPlay />Custom play icon
pauseIconReactNode<FaPause />Custom pause icon
volumeUpIconReactNode<BsFillVolumeUpFill />Custom volume up icon
volumeMuteIconReactNode<BsFillVolumeMuteFill />Custom mute icon
playbackSpeedsnumber[][1, 1.5, 2]Available playback speed options
onPlay() => voidundefinedCallback when audio starts playing
onPause() => voidundefinedCallback when audio pauses
onVolumeChange(volume: number) => voidundefinedCallback when volume changes

📜 License

This project is licensed under the MIT License.

🤝 Contributing

If you find any issues or want to contribute, feel free to open an issue or submit a pull request on GitHub.

🔗 GitHub Repository: react-wave-audio-player

⭐ Support

If you like this package, please give it a ⭐ on GitHub!

Happy coding! 🚀🎵

Keywords

react

FAQs

Package last updated on 28 Feb 2025

Did you know?

Socket

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.

Install

Related posts