Skip to content
Compact macOS Pandora client that doesn’t use Flash
Branch: master
Clone or download
nriley Remove (deprecated) texturing from main window.
Make the window titlebar transparent and restore movability by dragging the background (which came for free with texturing).
Latest commit 78f8bf4 Sep 16, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
Documentation Update Jun 13, 2014
Scripts Sign with Developer ID (currently mine). Jun 16, 2016
.gitignore Ignore .LSOverride. Apr 14, 2014


Build Status

A Pandora client for macOS.


This means that bugs will not be fixed and features will not be added unless someone else does so. Unfortunately, the former maintainers no longer have the time and/or resources to work on Hermes further.

If you're interested in fixing up Hermes, please reply to this GitHub issue (237).

Download Hermes

If you would like to compile Hermes, continue reading.

Develop against Hermes

Thanks to the suggestions by blalor, there's a few ways you can develop against Hermes if you really want to.

  1. NSDistributedNotificationCenter - Every time a new song plays, a notification is posted with the name under the object hermes with userInfo as a dictionary representing the song being played. See Song.m for the keys available to you.

  2. AppleScript - here's an example script:

     tell application "Hermes"
       play          -- resumes playback, does nothing if playing
       pause         -- pauses playback, does nothing if not playing
       playpause     -- toggles playback between pause/play
       next song     -- goes to the next song
       get playback state
       set playback state to playing
       thumbs up     -- likes the current song
       thumbs down   -- dislikes the current song, going to another one
       tired of song -- sets the current song as being "tired of"
       raise volume  -- raises the volume partially
       lower volume  -- lowers the volume partially
       full volume   -- raises volume to max
       mute          -- mutes the volume
       unmute        -- unmutes the volume to the last state from mute
       -- integer 0 to 100 for the volume
       get playback volume
       set playback volume to 92
       -- Working with the current station
       set stationName to the current station's name
       set stationId to station 2's stationId
       set the current station to station 4
       -- Getting information from the current song
       set title to the current song's title
       set artist to the current song's artist
       set album to the current song's album
       ... etc
     end tell

Want something new/fixed?

  1. Open a ticket! We'll get around to it soon, especially if it sounds appealing to us. We take all suggestions/feedback!

  2. Take a stab at it yourself if you're brave. Just send us a pull request if you've got something fixed. Here's some common things to do at the command line:

     make        # build everything
     make run    # build and run the application (logging to stdout)
     make dbg    # build and run inside LLDB
     # Build with the 'Release' configuration instead of 'Debug'
     make CONFIGURATION=Release [run|dbg]

    Please note that Media Key shortcuts will not work if compiled with CONFIGURATION=Debug (the default).


Code is available under the MIT License.

You can’t perform that action at this time.