npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

google-music-electron

v2.20.0

Published

Desktop app for Google Music on top of Electron

Downloads

69

Readme

google-music-electron Build status

Desktop app for Google Music on top of Electron

Features:

  • Google Music as a standalone application
  • Tray for quick play/pause/quit and tooltip with information
  • Media key shortcuts
  • MPRIS integration (for GNU/Linux desktop environments)

Screenshot

This was written as a successsor to google-music-webkit. When upgrading between versions of nw.js, there were regressions with taskbar and shortcut bindings. We wrote this as an alternative.

Requirements

Getting Started

google-music-electron can be installed globally via npm:

# Install google-music-electron via npm
npm install -g google-music-electron

# Run google-music-electron
google-music-electron

When the application has launched, it will appear in your taskbar and via a tray icon, tray icon.

Screenshot

Newsletter

Interested in hearing about updates and new releases of google-music-electron?

Subscribe to our newsletter!

MPRIS integration

If you are on GNU/Linux and your desktop environment supports MPRIS, you can install our MPRIS integration via:

google-music-electron install-mpris
# Once this succeeds, MRPIS will be integrated on `google-music-electron` restart

MPRIS screenshot

Updating

google-music-electron can be updated via npm:

# Update google-music-electron to a newer version via npm
npm update -g google-music-electron
# Alternatively, the following can be used as well to specify a version
# npm install -g google-music-electron@latest

Documentation

CLI

We have a few CLI options available for you:

  Usage: google-music-electron [options] [command]


  Commands:

    install-mpris   Install integration with MPRIS (Linux only)

  Options:

    -h, --help                  output usage information
    -V, --version               output the version number
    -S, --skip-taskbar          Skip showing the application in the taskbar
    --minimize-to-tray          Hide window to tray instead of minimizing
    --hide-via-tray             Hide window to tray instead of minimizing (only for tray icon)
    --allow-multiple-instances  Allow multiple instances of `google-music-electron` to run
    --verbose                   Display verbose log output in stdout
    --debug-repl                Starts a `replify` server as `google-music-electron` for debugging

Development

Running locally

To get a local development copy running, you will need:

  • npm, usually installed with node. Same npm that is used during installation
  • git, version control tool

Follow the steps below to get a development copy set up:

# Clone our repository
git clone https://github.com/twolfson/google-music-electron.git
cd google-music-electron/

# Install our dependencies and dev dependencies
npm install

# Start up `google-music-electron`
npm start

After running the above steps, a copy of google-music-electron should begin running.

Screenshot

Adding local setup as a global installation

After getting our local development set up, we can go one step further and get google-music-electron working on our CLI as if it were installed via npm install -g.

# Link local copy as a global copy
# WARNING: Make sure that `npm install` has been run before this point
#   or your local copy's permissions may get messed up
npm link

# Run `google-music-electron` for local copy
google-music-electron

More information on npm link can be found in npm's documentation:

https://docs.npmjs.com/cli/link

Icons

Source images are kept in the resources/ folder. Icons are maintained via Inkscape and the play/pause buttons are isolated in layers.

To generate icons:

  1. Export each of the play/pause/clean variants as a .svg file
  2. Load the icons via GIMP as a 32x32 SVG
  3. Export via GIMP as a .png

At the time of writing, Inkscape and Image Magick seemed to be generating non-transparent backgrounds upon converting SVG to PNG.

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint via npm run lint and test via npm test.

Donating

Support this project and others by twolfson via donations.

http://twolfson.com/support-me

Attribution

Headphones designed by Jake Dunham from the Noun Project

Unlicense

As of May 16 2015, Todd Wolfson has released this repository and its contents to the public domain.

It has been released under the UNLICENSE.