Black Lives Matter. Support the Equal Justice Initiative and read our statement here.
Moosync

Moosync

Simple and customizable desktop music player.

Moosync

All Contributors

Moosync is an Electron based simple music player with a primary goal to provide a clean and easy interface. Through Moosync you can easily listen songs from your desktop or through Youtube and Spotify.

Table of contents

Features

  • Play audio files on your desktop.
  • Seamlessly integrate your Spotify and Youtube playlists.
  • Add Spotify and Youtube tracks and playlists by URLs.
  • Play songs directly from youtube using youtube embed
  • Scrobble your tracks on LastFM.
  • Get music recommendations directly from Spotify, Youtube and LastFM
  • Mix and match songs from different providers in a single playlist
  • Easy to use interface
  • Customizable theme engine
  • Develop own apps on top of Moosync Extension API
  • Available on Windows and Linux

Download latest release

The latest release can be found under Releases section

Enabling Spotify integration

Due to restrictions from Spotify, a public api key could not be integrated into the app. Due to this, each user will be required to generate an API key for themselves

Creating an app on Spotify developer portal

Head over to the Spotify developer dashboard and create a new application

After creating a new app, click on the newly created app and you will be taken to a new page listing your Client ID and Client Secret. Note these down as they will be used later.

Click on Edit Settings button on top-right and add the following URLs into Redirect URI field:

These URLs are required to allow fetching a token from the Spotify OAuth2 code.

If you feel moosync.app is suspicious, don't worry you can check out its code here

Now you can head over to Moosync app and click on Settings. Under Settings > System you will find text fields for Spotify Client ID and Spotify Client Secret.

Paste the string you copied earlier into these fields. Now you should be able to log in to your Spotify account.

You can add your alternate accounts under Users and Access and use the same Client ID and Client Secret for multiple users.

Extensions

Functionnality of Moosync can be extended through Third party extensions. Extensions usually are archives with an extension of .msox. To install an extension, simply head over to Settings > Extensions > Install Extension. Here are some known extensions.

Discord Integration

Building from source

Requirements

Setting up the project

Clone the project from github

git clone https://github.com/Moosync/moosync-app

Downloading dependencies

Use yarn or npm to install dependencies inside the project root

yarn install

Setting up environment variables

  • Add appropriate values inside sample.config.env
  • Rename sample.config.env to config.env

Post installation

Native dependencies need to be compiled for electron separately.

Incase this does not work, you can run

yarn native

To compile native dependencies.

Running in development environment

To serve the app, run

yarn electron:serve

Building a production build

Before generating a production build, take a look at vue.config.js and change the builder options as required.

To generate a production optimized version run

yarn electron:build

Developing extensions

It is recommended to write your extensions using Typescript.

Typescript is Javascript but with strict typechecking which helps in preventing some (but not all) runtime errors.

Types for Extension API can be found here

A sample extension can be found here

More details about extension lifecycle can be found in the sample template

Contributors

Thanks goes to these wonderful people (emoji key):


Ohm

🎨

Anirudh

🎨

Sahil Gupte

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

not_used

Something missing? Edit this app.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab