SoundCloud for macOS and Windows

Related tags

electron soundcloud desktop
Overview

What is SoundCleod?

SoundCleod is a desktop application which brings SoundCloud to macOS and Windows without using a web browser.

Compared to using SoundCloud.com in a web browser like Chrome or Firefox you will get the following extras when using SoundCleod:

  • Dark mode
  • Desktop notifications
  • Control playback using media keys on the keyboard ( ❚❚ and friends)
  • True full screen without browser buttons
  • Control playback from the Notification Center using the Now Playing widget on macOS
  • Control playback from the macOS application menu
  • Stop playback when your computer goes to sleep
  • Close or hide all windows without interrupting playback

SoundCleod is a weird name. How to pronounce it?

How to get it?

Current version is 2.0.0 (May 19, 2020) see changes

For macOS

  • Download macOS installer from here
  • Locate the installer (.dmg) file in Finder
  • Double click on the installer file
  • Drag SoundCleod into your Applications folder
  • Double click SoundCleod in the Applications folder
  • Optionally drag SoundCleod from Applications into the Dock

Important! Minimum required macOS version is 10.10 (Yosemite).

For Windows

Important! Windows 7 or newer is required (only 64 bit, 32 bit Windows is not supported).

Using Homebrew Cask?

brew install soundcleod

Note: the homebrew method is supported by the Caskroom team, please report installation issues there.

Screenshots? Yeah!

SoundCleod screenshot

SoundCleod dark mode screenshot

Alternatives

To play SoundCloud:

Forks Using SoundCleod "Engine"

To play other stuff:

Contributing, reporting bugs

SoundCleod is an open source project built by Márton Salomváry released under MIT license. The project is hosted on GitHub, feel free to fork the code and make any changes you want. We even have documentation for first-time contributors!

Found a bug? Have a feature request? Create a GitHub issue.

Disclaimer

Use at your own risk. It might destroy the Earth. Or better don't use it.

Issues
  • Issues with OS X 10.10 (Yosemite)

    Issues with OS X 10.10 (Yosemite)

    Since updating to the yosemite beta I encountered strange displaying errors where the top nav bar of the embedded web page scrolls over the page and does not stay fixed at the top.

    I was able to fix it for myself by compiling from source with XCode 6 beta, but can still reproduce the problem when downloading the release version from github.

    bug 
    opened by yep 52
  • Consider switching to Electron

    Consider switching to Electron

    Because:

    • The whole apple-xcode-cocoa-objective-c business is #horror and none of my main skills (I usually have no idea what I'm doing in objective-c
    • Electron is cross platform
    • Electron has a modern browser engine

    Inventory list of Electron features needed to port SoundCleod:

    Deal breakers so far: automatic updates.

    opened by salomvary 20
  • Doesn't open properly

    Doesn't open properly

    the app doesn't open on start, only can navigate to the last played track or profile/likes but neither does home/stream/library buttons works for me. soundcleod 1.4.0 macos 10.15

    opened by RobertasMurnikovas 14
  • Stuck in blank screen after launch

    Stuck in blank screen after launch

    The first time I launched the app it worked okay. Every time after that it gets stuck in a white screen with the following message in the system log:

    6/4/16 12:41:08.090 SoundCleod[66133]: *** -[NSPlaceholderString initWithFormat:locale:arguments:]: nil argument

    Deleting SoundCleod's .plist file makes it work again.

    opened by gmq 13
  • Keyboard controls (play, pause, skip, etc) no longer work

    Keyboard controls (play, pause, skip, etc) no longer work

    Hey guys, just updated my mac to macOS Mojave and realized that keyboard controls no longer work. When I go hit pause or skip, it just brings up iTunes instead. I'm thinking probably because of the new OS? Could we get a fix for this?

    bug 
    opened by user1432 12
  • Add touchbar support

    Add touchbar support

    Adds basic touchbar support featuring buttons for previous track, play/pause, next track, like and displays the title/artist.

    touch bar shot 2017-03-12 at 4 40 11 pm
    opened by rmaes4 12
  • Open in SoundCleod

    Open in SoundCleod

    This PR adds a service for right click support to open SoundCloud URLs from any application in SoundCleod.

    Right click a link/text containing URLs -> Click Services -> Click Open in SoundCleod. You can also assign a keyboard shortcut to open the selected object in SoundCleod through the system settings.

    Solves #46

    Testing notes

    • Services for newly installed apps are loaded when logging in to OS X, so after building the first time, one must log out and in once for the service to appear.
    • If an application has a custom right click menu, it might not show Services (An example of this is Sublime Text.) You can always access the services by clicking the application name in the status bar, however.

    Issues

    • When registering the service I use the "old" values for Send Types (NSStringPboardType etc). The NSPasteboard documentation states that since OS X 10.6 we should use the new values (NSPasteboardTypeString etc) instead, but I was unable to get this to work. The old way seems to work fine for now. If anyone else wants to experiment with this, please go ahead :)
    • The service will show up in SoundCleod too, but won't actually do anything. I don't think it's worth spending too much time on since it won't be needed within the app.

    Other notes

    This PR probably renders the cleod://-scheme obsolete. We should consider removing it unless we intend for other apps to be able to communicate with SoundCleod in the future.

    opened by joelekstrom 11
  • FR: Lastfm scrobbler

    FR: Lastfm scrobbler

    I just discovered that app and i must say i really like it. I miss a few features before switching from chrome to this. And one of them is to be able to scrobble what i listen to to lastfm. Currently i do that with this

    Thanks for your amazing work!

    enhancement wontfix 
    opened by farfromrefug 11
  • When closing app on Mojave getting error message

    When closing app on Mojave getting error message

    Whenever closing the app on macOS Mojave, an error message is shown that "SoundCleod stopped working unexpectedly".

    opened by emadg 11
  • Playback Gets

    Playback Gets "Stuck" Frequently

    I've noticed when listening to a few songs, the playback will stop and I'll get the 3 dot loading animation on the play/pause button for that track. Pressing play/pause on the keyboard or the interface does not fix it, however, if I click just 2-5 sec before the current mark it starts playing again with out issue.

    I uses Soundcleod for 4-6 hours a day and this generally happens 2-8 times during that time. Note - I do use pause / play every 30 min.

    Thank you for any help! I'm wondering if there's a buffering issue that might be surfaced due to my usage patterns?

    opened by jasonseney 10
  • Login issue

    Login issue

    Screenshot 2021-08-20 at 11 11 45 the app won't allow me to log in with google, or FB or apple, or even with my email or username

    Whenever I click one of the "login with..." options, it pulls up a blank window, and says "Please enable popup windows and try again."

    However I can't disable pop-ups as this program isn't in a web browser

    any assistance will be greatly appreciated

    opened by morganevans777 0
  • Bump normalize-url from 4.5.0 to 4.5.1

    Bump normalize-url from 4.5.0 to 4.5.1

    Bumps normalize-url from 4.5.0 to 4.5.1.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • [Feature Request] Minimize to tray

    [Feature Request] Minimize to tray

    i don't really like having a lot of windows at the same time, is it possible to make this minimize to tray? it would be helpful. thanks!

    opened by AndreasYNY 0
  • Bump hosted-git-info from 2.8.5 to 2.8.9

    Bump hosted-git-info from 2.8.5 to 2.8.9

    Bumps hosted-git-info from 2.8.5 to 2.8.9.

    Changelog

    Sourced from hosted-git-info's changelog.

    2.8.9 (2021-04-07)

    Bug Fixes

    2.8.8 (2020-02-29)

    Bug Fixes

    • #61 & #65 addressing issues w/ url.URL implmentation which regressed node 6 support (5038b18), closes #66

    2.8.7 (2020-02-26)

    Bug Fixes

    • Do not attempt to use url.URL when unavailable (2d0bb66), closes #61 #62
    • Do not pass scp-style URLs to the WhatWG url.URL (f2cdfcf), closes #60

    2.8.6 (2020-02-25)

    Commits
    • 8d4b369 chore(release): 2.8.9
    • 29adfe5 fix: backport regex fix from #76
    • afeaefd chore(release): 2.8.8
    • 5038b18 fix: #61 & #65 addressing issues w/ url.URL implmentation which regressed nod...
    • 7440afa chore(release): 2.8.7
    • 2d0bb66 fix: Do not attempt to use url.URL when unavailable
    • f2cdfcf fix: Do not pass scp-style URLs to the WhatWG url.URL
    • e1b83df chore(release): 2.8.6
    • ff259a6 Ensure passwords in hosted Git URLs are correctly escaped
    • See full diff in compare view
    Maintainer changes

    This version was pushed to npm by nlf, a new releaser for hosted-git-info since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump lodash from 4.17.15 to 4.17.21

    Bump lodash from 4.17.15 to 4.17.21

    Bumps lodash from 4.17.15 to 4.17.21.

    Commits
    • f299b52 Bump to v4.17.21
    • c4847eb Improve performance of toNumber, trim and trimEnd on large input strings
    • 3469357 Prevent command injection through _.template's variable option
    • ded9bc6 Bump to v4.17.20.
    • 63150ef Documentation fixes.
    • 00f0f62 test.js: Remove trailing comma.
    • 846e434 Temporarily use a custom fork of lodash-cli.
    • 5d046f3 Re-enable Travis tests on 4.17 branch.
    • aa816b3 Remove /npm-package.
    • d7fbc52 Bump to v4.17.19
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by bnjmnt4n, a new releaser for lodash since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Security: Restrict login domains to TLD

    Security: Restrict login domains to TLD

    A crafty scriptor could get around the isLoginURL function by creating a link (in a tracks comments/description) to a subdomain to match the login URLs such as https://accounts.google.com.bad-actor.com/shellscript.html.

    Would be safer to check that the domain match is restricted to the top level eg /^https:\/\/accounts\.google\.com\/.*/i,

    Workflow wise this could be done at the same time as #206. Also at the same time; new-window is being deprecated.

    References:

    • https://www.electronjs.org/docs/api/web-contents#event-new-window-deprecated
    • https://www.electronjs.org/docs/tutorial/security#14-do-not-use-openexternal-with-untrusted-content
    • https://security.stackexchange.com/questions/225799/dangers-of-electrons-shell-openexternal-on-untrusted-content
    • https://gist.github.com/MarshallOfSound/ad19a8846c06033cb07a8b203ebda7f6
    help wanted security 
    opened by mountainash 2
  • Controls buttons dimmed in Dark mode

    Controls buttons dimmed in Dark mode

    Control buttons in the bottom of the window are dimmed in dark mode, although they still function fine. Shouldn't be hard to fix. Or is this by design? Thanks!

    Screenshot 2021-04-14 at 15 21 00
    opened by needz 0
  • Bump y18n from 3.2.1 to 3.2.2

    Bump y18n from 3.2.1 to 3.2.2

    Bumps y18n from 3.2.1 to 3.2.2.

    Commits
    Maintainer changes

    This version was pushed to npm by oss-bot, a new releaser for y18n since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
Releases(v2.0.0)
Owner
Márton Salomváry
Freelance full stack software engineer and consultant. Specialized in small to large scale web and mobile applications. Scala, Ruby, Java, JavaScript & co.
Márton Salomváry
Manage your vagrant machines in one place with Vagrant Manager for OS X

Looking for the Windows version? Check out Vagrant Manager for Windows Vagrant Manager for OS X Vagrant Manager is an OS X status bar menu app that le

Lanayo Technology 1.9k Sep 14, 2021
A desktop app for inspecting your React JS and React Native projects. macOS, Linux, and Windows.

Join our Community Slack Quick Installation Guide What is Reactotron? Reactotron is a macOS, Windows, and Linux app for inspecting your React JS and R

Infinite Red, Inc. 13.2k Sep 24, 2021
Frugal and native macOS Syncthing application bundle

Syncthing for macOS Introduction syncthing-macos project is a native macOS Syncthing tray application bundle. It bundles its own syncthing instance an

The Syncthing Project 1.3k Sep 19, 2021
Apple TV Aerial Screensaver for Mac

Aerial - Apple TV Aerial Views Screen Saver Aerial is a Mac screensaver (macOS 10.12 or later) based on the new Apple TV screensaver that displays the

John Coates 19.5k Sep 22, 2021
An unofficial DevDocs API Documentation viewer for macOS.

DevDocs for macOS An unofficial DevDocs API Documentation viewer for macOS. Features Tabs Global shortcut (Option + Space), customizable Automatic dar

Douglas Teoh 300 Sep 14, 2021
Coronavirus tracker app for iOS & macOS with maps & charts

Coronavirus tracker app for iOS & macOS with maps & charts

Mhd Hejazi 1.4k Sep 19, 2021
Menu bar macOS app for running rkt in a macOS hypervisor CoreOS VM.

RktMachine is a macOS menu bar app providing a CoreOS VM using HyperKit and the macOS Hypervisor. It supports developer workflows using the rkt contai

Woof Woof, Inc. 30 Sep 20, 2021
A cross-platform Reddit client built in SwiftUI

A cross-platform Reddit client created in SwiftUI. Get the Public Beta Note: This project is far from complete. It still lacks many features of your t

Carson Katri 1.1k Sep 22, 2021
Completed Project for Cross Platform Image Filter SwiftUI macOS & iOS App

Completed Project for Cross Platform Image Filter SwiftUI macOS & iOS App Follow the tutorial at alfianlosari.com Features Filter image using predefin

Alfian Losari 51 Aug 29, 2021
Convenient secure logging during development release in Swift 3, 4 5

Colorful, flexible, lightweight logging for Swift 3, Swift 4 & Swift 5. Great for development & release with support for Console, File & cloud platfor

SwiftyBeaver 5.3k Sep 16, 2021
Create native Mac applications from command line scripts.

Platypus Platypus is a developer tool that creates native Mac applications from command line scripts such as shell scripts or Python, Perl, Ruby, Tcl,

Sveinbjorn Thordarson 1.8k Sep 21, 2021
MacOS Big Sur like theme for Gnome desktops

MacOS Big Sur like theme for Gnome desktops

Vince 1.8k Sep 22, 2021
A minimal, beautifully designed music player for OS X.

Sonora A minimal, beautifully designed music player for the Mac Developed by Indragie Karunaratne Designed by Tyler Murphy Sonora (previously sold on

Sonora for Mac 925 Sep 12, 2021
Jetpack Compose and SwiftUI based Kotlin Multiplatform sample project (based on CityBikes API).

Jetpack Compose and SwiftUI based Kotlin Multiplatform sample project (based on CityBikes API).

John O'Reilly 278 Sep 17, 2021
a Cocoa GUI for /etc/hosts

Hosts, a system preference pane to manage your hosts file Hosts adds a preference pane to your system preferences which lets you toggle your host file

Voxin Muyli 1.5k Sep 15, 2021
Hosts file manager for OS X

Gas Mask Gas Mask is simple hosts file manager for macOS. It allows editing of host files and switching between them. System requirements Runs on Lion

Siim Raud 3.3k Sep 17, 2021
macOS app that contains a full Ruby installation (for use with Ruby/Gosu)

Ruby.app Universal application wrapper to deploy Ruby apps on OS X (using MRI/C Ruby, not MacRuby or JRuby). So far, it has only been used to release

The Gosu Library 35 Aug 16, 2021
⏲ macOS app to plan and organize through timezones.

Clocker Clocker is an macOS menubar utility designed to help you keep track of your friends in different time zones. It's written using Objective-C Sw

Abhishek Banthia 399 Sep 7, 2021
iOS app that detects LaTeX symbols from drawings. Built using PencilKit, SwiftUI, Combine and CoreML for iOS 14 and macOS 11.

DeTeXt Finding the symbol you want to use in LaTeX can be hard since you can't memorize all the possible commands and packages for every symbol you mi

Venkat 25 Sep 21, 2021