dmtrshat / nuclear

Desktop music player for streaming from free sources

Home Page:https://nuclear.js.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nuclear

Maintainability Codacy Badge Travis

Desktop music player focused on streaming from free sources

Official website

Mastodon

Twitter

Support channel (Matrix): #nuclear:matrix.org

What is this?

nuclear is a free music streaming program that pulls content from free sources all over the internet.

If you know mps-youtube, this is a similar music player but with a GUI. It's also focusing more on audio. Imagine Spotify which you don't have to pay for and with a bigger library.

Pre-alpha release

The current version is a pre-alpha early access. Some of it is usable, some of it isn't. If there are things that don't work as expected or are counterintuitive, please open an issue so I can prioritize working on them.

What if I am religiously opposed to Electron?

See this.

Features

  • Searching for and playing music from youtube (including integration with playlists), jamendo, and soundcloud
  • Searching for albums (powered by last.fm and musicbrainz), album view, automatic song lookup based on artist and track name (in progress, can be dodgy sometimes)
  • Song queue, which can be exported as a playlist
  • Loading saved playlists (stored in json files)
  • Scrobbling to last.fm (along with updating the 'now playing' status)
  • Newest releases with reviews - tracks and albums
  • Browsing by genre
  • Radio mode (automatically queue similar tracks)
  • Unlimited downloads (powered by youtube)
  • Realtime lyrics
  • Browsing by popularity
  • List of favorite tracks
  • Listening from local library

Community translations

Nuclear has already been translated to several languages, and we're always looking for contributors who would like to add more. Below is a list of currently available languages, along with contributors who helped to translate Nuclear to that language.

Language Contributor
English N/A
French charjac
Dutch Vistaus
Danish Hansen1992
Spanish mlucas94
Polish kazimierczak-robert, gradzka
German schippas
Russian ramstore07, dmtrshat
Brazilian Portuguese JoaoPedroMoraes

Manual and docs

https://nuclearmusic.rtfd.io/

Community-maintained packages

Here's a list of packages maintained by third parties. We would like to thank the maintainers for their work.

We do not control these and cannot be held responsible for their contents, but if any of these appear suspicious to you, feel free to open an issue so we can reach out to the maintainers.

Package type Link Maintainer
AUR (Arch) https://aur.archlinux.org/packages/nuclear-player-bin/ mikelpint
Choco (Win) https://chocolatey.org/packages/nuclear/ JourneyOver

Screenshots

This will be updated as the program evolves.

laptop mockup 1

laptop mockup 2

album search

album display

artist view

dashboard

playlist view

genre view

Dev build process

As all Electron applications, Nuclear has two parts: the server and the web app.

Before you begin, make sure you're using the latest version of Node and NPM. To run the web app part in development mode locally, you should only do:

$ npm install
$ npm run watch

This launches webpack. It watches local files for changes and rebuilds the project as needed. The project also has hot reload built in.

To launch the server, you need to run this in another terminal window:

$ npm run electron:dev

This launches a development version of the program. Tmux is very useful here so you can keep an eye on all running processes.

A new window should open that will load the web app part and run Nuclear.


To run production version:

$ npm run build:dist
$ npm run electron:prod

To build for current operating system:

$ npm run build:dist
$ npm run build:electron
$ npm run pack

Instead of pack you can use build:all to build for all operating systems or build:[system] to build for a particular system (see package.json).

In case of errors with dbus/mpris, try removing optional dependencies from package.json and node_modules.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Support on Beerpay

Beerpay Beerpay

About

Desktop music player for streaming from free sources

https://nuclear.js.org/

License:GNU Affero General Public License v3.0


Languages

Language:JavaScript 83.9%Language:CSS 13.4%Language:HTML 2.6%Language:Dockerfile 0.1%