vuetify3-audio-player

Audio player for Vue 3 based on Vuetify.
3,403 16
Install
npm install vuetify3-audio-player
Latest Version:1.5.1
License:MIT
Last Updated:Jun 15, 2025
Links: GitHub  ·  npm
Maintainer: 1bsilver

vuetify3-audio-player

Downloads Version License

A beautiful, modern, and fully customizable audio player for Vue 3 & Vuetify 3.


🚀 Live Playground

Try all features live in the /playground folder or online demo. All props, color options, and variants are interactive.


Features

  • 🎵 Vue 3 + Vuetify 3: Seamless integration with the latest Vue ecosystem.
  • 🎨 Modern, Responsive UI: Looks great on all devices, supports dark mode.
  • ⚡ Live Playground: Try all props and see live code updates in the playground.
  • 🧩 All Props Documented: Every prop, event, and icon is documented and demoed.
  • 🖌️ Customizable Colors & Icons: Choose from Vuetify theme colors and set your own icons.
  • 🏷️ Minimal & Flat Modes: Compact/minimal UI and flat card support.
  • 🔁 Loop, Download, Playback Speed: All the controls you expect.
  • ♿ Accessibility: Keyboard navigation, aria-labels, and focus states.
  • 🚀 Performance Optimized: Fast, efficient, and production-ready.
  • 📦 NPM & GitHub: npm | GitHub

Installation

npm install vuetify3-audio-player --save

Usage

import VuetifyAudio from "vuetify3-audio-player";
export default {
  components: { VuetifyAudio },
  data: () => ({
    file: "http://www.hochmuth.com/mp3/Boccherini_Concerto_478-1.mp3",
  }),
};
<vuetify-audio
  :file="file"
  color="primary"
  :downloadable="true"
  :minimal="false"
  :autoPlay="false"
  :flat="false"
  :playbackSpeed="false"
  :loopable="false"
  :ended="onEnded"
  :canPlay="onCanPlay"
  playIcon="mdi-play"
  pauseIcon="mdi-pause"
  stopIcon="mdi-stop"
  refreshIcon="mdi-refresh"
  downloadIcon="mdi-download"
  volumeHighIcon="mdi-volume-high"
  volumeMuteIcon="mdi-volume-mute"
  variant="default"
/>

Props

Prop Type Default Description
file String null Audio file URL (required)
color String null Vuetify color for controls
downloadable Boolean false Show download button
minimal Boolean false Minimal UI mode
autoPlay Boolean false Autoplay on load
flat Boolean false Flat card style
playbackSpeed Boolean false Show playback speed button (user can change speed)
loopable Boolean false Show repeat button and allow looping (user can toggle repeat)
ended Function () => {} Callback when audio ends (event handler)
canPlay Function () => {} Callback when audio can play (event handler)
playIcon String "mdi-play" Icon for play button (Material Design Icon name)
pauseIcon String "mdi-pause" Icon for pause button (Material Design Icon name)
stopIcon String "mdi-stop" Icon for stop button (Material Design Icon name)
refreshIcon String "mdi-refresh" Icon for refresh/reload button (Material Design Icon name)
downloadIcon String "mdi-download" Icon for download button (Material Design Icon name)
volumeHighIcon String "mdi-volume-high" Icon for volume high (Material Design Icon name)
volumeMuteIcon String "mdi-volume-mute" Icon for volume mute (Material Design Icon name)
variant String "default" Player style variant (default, modern, tonal)

License

MIT

Related Packages

vuetify-audio

Audio player component for Vue 3 and Vuetify 4

17,837 144
vue-audio

vue.js audio files player

13,207 177
vue-howler

A Howler.js mixin for Vue 2 that makes it easy to create custom audio player com...

9,347 102
@iomariani/vue-player

Vue.js HTML5 Audio/Video Player

1,811 10
vue-audio-better

Easy to create custom audio player components for Vue.js.

21,277 141

Version History

Version Released License
1.5.1 MIT
1.5.0 MIT
1.1.0 MIT
1.0.4 MIT
1.0.3 MIT