One-on-one device support

Professional Website Development

Professional website development tailored to your business. We design fast, secure, and mobile-friendly websites that help you attract customers, build trust, and grow your online presence.

Website Development

Wavesurfer Soundcloud Player

Custom Soundcloud Player

Project Information

Overview

This project is a custom audio player built using Vue.js and WaveSurfer.js, designed to replicate and enhance the core interaction model of SoundCloud’s player interface. It features a central circular play/pause button with a dynamically wrapped progress indicator that displays the audio waveform progression and duration in a visually engaging way. The UI focuses on minimalism and usability, with playback controls integrated directly into the visual representation of the audio. Users can play, pause, and visually track progress through an intuitive circular waveform/duration ring that surrounds the main control button.

Key Features

  • SoundCloud-inspired UI design

    Familiar, intuitive layout that reduces user learning curve and improves engagement.

  • Central circular play/pause control

    Combines primary playback action into a single, accessible focal point.

  • Wrapped progress/duration indicator

    Real-time visual feedback encircling the button, showing playback progress in an engaging format.

  • Waveform rendering with WaveSurfer.js

    Provides accurate visual representation of audio structure for better user interaction.

  • Seamless play/pause state handling in Vue

    Reactive UI ensures instant feedback and smooth state transitions.

  • Interactive progress syncing

    UI remains fully in sync with audio playback state without lag or desync issues.

  • Reusable Vue component architecture

    Easily dropped into other projects such as music previews, podcasts, or event promos.

  • Optimised audio experience

    Lightweight and efficient rendering for smooth playback across devices.

Impact

This project enhances the traditional audio player experience by merging playback controls and visual feedback into a single, highly interactive component. By combining Vue’s reactive capabilities with WaveSurfer.js waveform rendering, the player delivers smooth, real-time synchronisation between audio state and UI. The circular play/pause design with a wrapped progress indicator improves usability by making playback status instantly visible and intuitive, while also creating a more engaging and modern listening experience. Overall, it demonstrates how thoughtful UI design and component-based architecture can transform a standard audio player into a more immersive and user-friendly interface.

Technical Details

Vue.js WaveSurfer.js JavaScript (ES6+) HTML5 Audio API CSS3 SVG / Canvas

This project demonstrates how Vue.js and WaveSurfer.js can be combined to create a highly interactive and visually engaging audio player. By integrating playback controls directly into a circular, SoundCloud-inspired interface, the result is a component that feels both modern and intuitive.<br /> <br /> The focus on real-time visual feedback, reusable architecture, and clean UI design makes it suitable for a range of audio-driven applications, from music previews to promotional media players.

Ready to build a website that works for your business?