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
- Table of contents
- Download latest release
- Enabling Spotify integration
- Building from source
- 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.
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.
- Moosync Discord RPC: Show your song details in discord through Discord RPC.
Building from source
Setting up the project
Clone the project from github
git clone https://github.com/Moosync/moosync-app
Use yarn or npm to install dependencies inside the project root
Setting up environment variables
- Add appropriate values inside sample.config.env
- Rename sample.config.env to config.env
Native dependencies need to be compiled for electron separately.
Incase this does not work, you can run
To compile native dependencies.
Running in development environment
To serve the app, run
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
It is recommended to write your extensions using Typescript.
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
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!