Skip to content

hyperblast/beefweb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

beefweb

Web interface plugin for DeaDBeeF and foobar2000 music players.

License Build Status

Features

  • Lightweight web user interface
  • Playback control
  • Playlist management
  • Music directory browser
  • Real-time UI updates
  • Mobile-friendly responsive design
  • REST-like API for controlling player from your application

Browser support

  • Any recent browser should work
  • Due to high development effort required Internet Explorer of any version is not supported

Downloads

Check out releases section.

How to install

DeaDBeeF

Unpack ddb_beefweb-*.tar.gz to $HOME/.local/lib/deadbeef.

foobar2000

Open foo_beefweb-*.fb2k-component with foobar2000, you will be asked to install the plugin.

How to use

Point your browser to http://localhost:8880 and enjoy your web interface.

If you've enabled remote connections on plugin configuration screen you'll be able to connect from remote machines as well.

To allow browsing and adding files via web interface specify music directories in plugin configuration screen. For DeaDBeeF multiple music directories should be separated with ;.

See advanced configuration guide to unlock hidden developer features.

Donations

If you like this project feel free to donate. Any amount is appreciated.

Screenshots

Main web interface on Linux

Configuration screen for DeaDBeeF

Main web interface on Windows

Configuration screen for foobar2000

How to build

DeaDBeeF

Beefweb has two distinctive parts: server plugin and web user interface. To build server you'll need a descent C++ compiler such as gcc or clang and a recent version of cmake. To build web UI you'll need node runtime and yarn package manager.

The following command will build server, ui and .tar.gz package:

$ scripts/build.sh --all --release

Get ddb_beefweb-*.tar.gz from build/release directory.

You could also build debug version by switching --release to --debug.

foobar2000

You'll need to install Visual Studio (currently tested with VS2022 Community).

The following programs should be installed in addition:

  • git version control system
  • node runtime
  • yarn package manager (npm i -g yarn)
  • cmake build system (could be installed with Visual Studio or separately)
  • 7z archiver

These programs should be available in PATH.

Open Visual Studio command prompt, navigate to project directory, run the following command:

> msbuild scripts\build.proj /p:Configuration=Release

Get foo_beefweb-*.fb2k-component from build\release directory.

You could also build debug version by switching /p:Configuration=Release to /p:Configuration=Debug

HTTP API

Swagger API definition is available.