Skip to content
Streaming music player that finds free music for you
JavaScript TypeScript CSS Other
Branch: master
Clone or download

Latest commit

primeapple and Toni Fix development process instructions in readme (#696) (#698)
* Added link to contribution wiki

* changed npm development instructions

Co-authored-by: Toni <toni.mueller@student.uni-halle.de>
Latest commit a252954 May 14, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Raise timeout limit Jan 27, 2020
__mocks__ Fix test issues Jan 29, 2020
build chore(build): add back icons Jan 2, 2020
docs feat(devtools): add shortcut and settings for devtools Apr 27, 2020
packages Merge pull request #710 from Venryx/Issue685_AddTreeViewForLocalLibrary May 14, 2020
.env feat(plugin): add invidious plugin Jan 22, 2020
.eslintrc.json style: new lint rule Apr 26, 2020
.gitattributes chore(build): add back icons Jan 2, 2020
.gitignore 645 searchdropdown (#690) Apr 21, 2020
.npmrc chore(npm): no more package-lock.json Mar 31, 2019
.travis.yml Update electron-builder setup Jan 16, 2020
CONTRIBUTING.md Adding link to the contribute wiki Feb 1, 2019
Dockerfile add npm script to build and run nuclear:prod using docker (#173) Feb 13, 2019
Dockerfile.dev Convert to lerna monorepo (#485) Sep 30, 2019
LEGAL.md Rename LEGAL to LEGAL.md (#235) Feb 4, 2019
LICENSE Create LICENSE Jan 24, 2018
README.md Fix development process instructions in readme (#696) (#698) May 14, 2020
docker-compose.yml Convert to lerna monorepo (#485) Sep 30, 2019
lerna.json Bump version to 0.6.3 Feb 3, 2020
logo.png Add snapcraft banner to resources Jan 27, 2020
package.json style(lint): new rules and fix lint error Apr 26, 2020
tsconfig.json refactor(i18n): move i18n related code to its own package Jan 22, 2020

README.md

nuclear

Maintainability Codacy Badge nuclear Travis

Desktop music player focused on streaming from free sources

Showcase

Links

Official website

Mastodon

Twitter

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 Discogs), 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

https://nuclearmusic.rtfd.io/

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

First of all, be sure to check out the Contribution Wiki Page.

Use lerna:

$ npm install # installs dependencies
$ npx lerna bootstrap # links the packages
$ 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.

Album Search

Album Display

Artist View

Dashboard Best New Music

Dashboard Genres

Playlist View

Lyrics View

Equalizer View

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.

You can’t perform that action at this time.