Skip to content

rafalenden/amp-for-bandcamp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Amp for Bandcamp - Browser Extension

A multi-browser extension (Chrome, Firefox, Safari) that amplifies Bandcamp functionality with playback controls and UI improvements.

Download on the App Store Available in the Chrome Web Store Get the Add-On for Firefox

Disclaimer: This extension is not affiliated with, endorsed by, or connected to Bandcamp. It is an independent project designed to enhance the user experience on Bandcamp.

Features

  • Volume control slider
  • Configurable seek duration
  • Auto-play the next track when the current one ends
  • Sticky mini-player that remains visible while scrolling on album pages
  • Playback progress bar on feed and album pages
  • BPM detection on album pages
  • Warn when leaving the site during playback
  • Keyboard shortcuts (play/pause, seek, next/previous, wishlist, open track)

Building

This project includes npm scripts to help with building the extension for different browsers.

Prerequisites

  • Node.js (for running build scripts)
  • Xcode (for Safari extension)
  • zip command-line utility (for Chrome/Firefox packages)

Build

# Install packages
npm i

# Build for all platforms
npm run build

# Build ZIP file for Chrome/Firefox
npm run build:zip

# Build Safari extension with xcodebuild
npm run build:safari

All build artifacts will be placed in the dist directory:

  • dist/amp-for-bandcamp.zip - Chrome/Opera/Edge/Firefox extension package
  • dist/safari - Safari build output (compiled extension)

Installation (from sources)

After finishing the "build" step from the above, you can now proceed to the installation step.

Chrome/Edge/Opera

  1. Download or clone this repository
  2. Open Chrome and navigate to chrome://extensions/
  3. Enable "Developer mode" (toggle in the top-right corner)
  4. Click "Load unpacked" and select the extension directory
  5. The extension should now be installed and active

Firefox

  1. Download or clone this repository
  2. Open Firefox and navigate to about:debugging#/runtime/this-firefox
  3. Click "Load Temporary Add-on..."
  4. Select any file in the extension directory
  5. The extension should now be installed and active (note: this is temporary and will be removed when Firefox is closed)

Safari

  1. Download or clone this repository
  2. Install Xcode from the Mac App Store
  3. Open the Xcode project:
    open "safari/Amp for Bandcamp.xcodeproj"
  4. Build and run the project in Xcode
  5. Enable the extension in Safari preferences:
    • Safari > Settings > Extensions
    • Check the box next to "Amp for Bandcamp"

Testing

The extension uses Playwright for end-to-end testing. The tests verify that the core functionality works correctly on different Bandcamp pages.

Install Playwright Dependencies

npx playwright install

Running Tests

# Run all tests
npm test

# Run tests with interactive UI
npm run test:ui

# Run tests in debug mode
npm run test:debug

About

🧩 Browser extension that amplifies Bandcamp functionality with shortcuts, playback controls and UI improvements.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Contributors