Desktop music player focused on streaming from free sources
Links
Support channel (Matrix): #nuclear:matrix.org
Discord channel: https://discord.gg/JqPjKxE
Readme translations:
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.
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
Manual and docs
Community-maintained packages
Here's a list of packages for various managers, most of which are maintained by third parties. We would like to thank the maintainers for their work.
Package type | Link | Maintainer |
---|---|---|
AUR (Arch) | https://aur.archlinux.org/packages/nuclear-player-bin/ | mikelpint |
Choco (Win) | https://chocolatey.org/packages/nuclear/ | JourneyOver |
Homebrew (Mac) | https://formulae.brew.sh/cask/nuclear | Homebrew |
Snap | https://snapcraft.io/nuclear | nukeop |
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, Zalax |
Dutch | Vistaus |
Danish | Hansen1992 |
Spanish | mlucas94, emlautarom1 |
Polish | kazimierczak-robert, gradzka |
German | schippas |
Russian | ramstore07, dmtrshat |
Brazilian Portuguese | JoaoPedroMoraes |
Turkish | 3DShark |
Italian | gello94 |
Slovak | MartinT |
Czech | PetrTodorov |
Tagalog | giftofgrub |
Traditional Chinese | oxygen-TW |
Swedish | PalleKarlsson |
Development process
Use lerna:
$ npm i -g lerna #installs lerna globally
$ lerna bootstrap
$ npm start
A new window should open that will load the web app and run Nuclear.
To build for current operating system:
$ lerna bootstrap
$ npm run build
Instead of build
you can use build:all
to build for all operating systems. The binaries will be in packages/app/release
It's also possible to run the development environment using docker containers.
You will need docker and docker-compose. You need to allow the root user to connect to X11 display, and then you can run docker-compose:
$ xhost SI:localuser:root
$ sudo docker-compose up dev
Screenshots
This will be updated as the program evolves.
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.