GithubHelp home page GithubHelp logo

hitoruku / multi-scrobbler Goto Github PK

View Code? Open in Web Editor NEW

This project forked from foxxmd/multi-scrobbler

0.0 0.0 0.0 6.35 MB

Scrobble plays from multiple sources to multiple clients

Home Page: https://foxxmd.github.io/multi-scrobbler

License: MIT License

JavaScript 1.36% TypeScript 95.82% CSS 0.44% HTML 0.28% Dockerfile 0.37% SCSS 0.86% MDX 0.87%

multi-scrobbler's Introduction

multi-scrobbler

Latest Release License: MIT Docker Pulls

multi-scrobbler logo

A javascript app to scrobble music you listened to, to Maloja, Last.fm, and ListenBrainz

Why should I use this over a browser extension and/or mobile app scrobbler?

  • Platform independent -- Because multi-scrobbler communicates directly with service APIs it will scrobble everything you play regardless of where you play it. No more need for apps on every platform you use!
  • Open-source -- Get peace of mind knowing exactly how your personal data is being handled.
  • Track your activity regardless of where you listen -- Scrobble from many Sources to one Client with ease and without duplicating tracks.
  • Manage scrobbling for others -- Scrobble for your friends and family without any setup on their part. Easily silo sources to specific clients to keep plays separate.

But I already scrobble my music to Last.fm/ListenBrainz, is multi-scrobbler for me?

Yes! You can use Last.fm as a Source or Listenbrainz as a Source to forward scrobbles from your profile to any other Client! That way you can keep your current scrobble setup as-is but still get the benefit of capturing your data to a self-hosted location.

How Does multi-scrobbler (MS) Work?

You set up configurations for one or more Sources and one or more Clients. MS monitors all of your configured Sources. When new tracks are played by a Source it grabs that information and then sends it (scrobbles it) to all Clients that Source is configured to scrobble to.

Source

A Source is a data source that contains information about tracks you are playing like a music player or platform. Examples are Spotify, Jellyfin, Plex, Youtube Music, Airsonic, etc...

Source configurations consist of:

  • A friendly name.
  • Any data needed to communicate or authenticate with the Source.
  • An optional list of Client names that the Source should scrobble to. If omitted the Source also scrobbles to all configured Clients.

Client

A Client is an application that stores the historical information about what songs you have played (scrobbles). Examples are Maloja, Last.fm, Listenbrainz...

Client configurations consist of:

  • A friendly name.
  • Any data needed to communicate or authenticate with the Client.

Installation

See the Installation documentation

Configuration

See the Configuration documentation

Usage

A status page with statistics, recent logs, and some runtime configuration options can be found at

http://localhost:9078

Output is also provided to stdout/stderr as well as file if specified in configuration.

On first startup you may need to authorize Spotify and/or Last.fm by visiting the callback URL (which can also be accessed from the status page). Visit the status page above to find the applicable link to trigger this.

Help/FAQ

Having issues with connections or configuration? Check the FAQ before creating an issue!

License

MIT

multi-scrobbler's People

Contributors

foxxmd avatar christophernewton avatar northys avatar samdoshi avatar whhoesj avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.