Skip to content
This repository has been archived by the owner on Oct 4, 2018. It is now read-only.

DangerCove/reign-for-spotify

Repository files navigation

Overview

Reign for Spotify is a remote for friends, colleagues, housemates and yourself that works in any browser. It's available for download on the Mac App Store.

What makes Reign unique is that it uses a web page to feed commands to Spotify. Making any device with a web browser a potential remote; iPhone/Android phones, tablets, but also Playstation Vita's, e-Readers etc.

Reign for Spotify

Reign works on 64bit Macs running OS X 10.7 and up.

Cloning

Reign relies on the LaunchAtLoginHelper git submodule, so clone Reign as follows:

$ git clone --recursive https://github.com/DangerCove/reign-for-spotify.git

Compiling

Opening the project

  • Double click the SpotifyRemoteWorkspace.xcworkspace to open the project in Xcode.

Quick look around

  • The workspace consists of two projects: Reign and a Helper. The Helper is used to launch Reign on startup;
  • There are build schemes for App Store and Non App Store distribution;
  • Some code (like the preferences window) differs between App Store and Non App Store (mainly because of Sparkle);
  • The Server opens a http socket using CocoaHTTPServer, broadcasts it using Bonjour and feeds commands to Spotify using AppleScript;
  • The Client uses CocoAsyncSocket looks around for other Reign servers;
  • Comments are minimal, sorry, might fix that later.

Things you need to add

  • The App Store build uses Receigen for receipt validation, remove the build step and code in main.m if you don't have it;
  • Related to Receigen, this repo relies on a statically linked OpenSSL library. Clear the User Header Search Path to remove it.
  • The dsa_pub.pem file for Sparkle is obviously missing.

Purpose and pull-requests

  • For me, this is a pet project, but we'll try our best to merge additions to our code;
  • Bug-fixes and other stuff I can learn from are awesome;
  • New features are great.

Credits

Robbie Hanson - CocoaAsyncSocket

Robbie Hanson - CocoaHTTPServer

Robbie Hanson - CocoaLumberjack

Ahmet Ardal - DisableSubviews

Vadim Shpakovski - MASPreferences

David Keegan - LaunchAtLoginHelper

Andy Matuschak - Sparkle

Contributors

Boy van Amstel - boyvanamstel

Dan Gilbert - daentech

License for the rest of it

New BSD License, see LICENSE for details.

About

The Spotify remote for friends, colleagues, housemates and yourself that works in any browser.

Resources

License

Stars

Watchers

Forks

Packages

No packages published