/StreamusChromeExtension

A YouTube video player as a Google Chrome extension

Primary LanguageJavaScriptApache License 2.0Apache-2.0

Streamus

The most popular Chrome extension YouTube music player.

Overview

This is the repository for Streamus the browser extension. The source for Streamus' server and website are located in their own, respective repositories.

Streamus is currently supported on all derivatives of WebKit such as Chrome, Opera, Slimjet, and Iron. Additionally, it will support Edge once stable.

It can be installed through the Chrome Web Store, the Opera Web Store, or from the Streamus website

Development

Start by cloning the development branch. All PRs should be submitted to the development branch.

Dependencies

You will need to have [Node](https://nodejs.org/) installed on your system as well as [Grunt](http://gruntjs.com/). After installing Node, navigate using a terminal to the directory in which you cloned Streamus. Then, perform the following command to install dependencies:
npm install

Loading and editing CSS

Streamus' CSS is compiled via [LESS](http://lesscss.org/). As such, you need to run the following command from the '/StreamusChromeExtension' directory before working with the software:
grunt less && grunt watch

This command will parse all currently existing .less files and transform them into .css. Then, it will begin to watch for modifications to those files and automatically re-compiled into .css.

API keys

You will need to modify the example key files located in the [/js/background/key/](https://github.com/MeoMix/StreamusChromeExtension/tree/Development/src/js/background/key) directory. Copy `youTubeAPIKey.js.example`, rename it to `youTubeAPIKey.js` and replace the example API key with your own. Production keys are not committed to GitHub. The example key provided should not be relied upon for anything other than testing and it may be revoked without warning. You are strongly encouraged to generate your own key.

Server settings

Ensure that the property 'localDebug' is set to **false** unless you have configured an instance of Streamus' server on your local machine. The localDebug property can be found at [/js/background/application.js](https://github.com/MeoMix/StreamusChromeExtension/blob/Development/src/js/background/application.js).

Loading the extension

1. Navigate to **chrome://extensions/** 2. Ensure the checkbox labeled **Developer mode** is enabled. 3. Click the button labeled **Load unpacked extension...** 4. Select the directory **/StreamusChromeExtension/src/**

Testing

Test cases may be ran by navigating to chrome-extension://jbnkffmindojffecdhbbmekbmkkfpmjd/test.html, but only after the extension package has been loaded into Google Chrome.

Libraries

Streamus uses a fair number of third-party JavaScript libraries. Introduction of additional libraries for off-the-shelf functionality is discouraged. Non-core libraries may be removed in the near future and additional functionality should not be implemented with them.

Core

* [jQuery](http://jquery.com/) * [Backbone](http://backbonejs.org/) * [Marionette](http://marionettejs.com) * [Lo-Dash](http://lodash.com/) * [Require](http://requirejs.org/) * [Text](https://github.com/requirejs/text)

Non-core

* [Backbone LocalStorage](https://github.com/jeromegn/Backbone.localStorage) * [jQuery UI](http://jqueryui.com/)

Testing

* [Mocha](http://visionmedia.github.io/mocha/) * [Chai](http://chaijs.com/) * [Sinon](http://sinonjs.org/)

Authors

with translation support provided by a community of volunteers.