Copyright (c) 2015 NightDev
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without limitation of the rights to use, copy, modify, merge,
and/or publish copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice, any copyright notices herein, and this permission
notice shall be included in all copies or substantial portions of the Software,
the Software, or portions of the Software, may not be sold for profit, and the
Software may not be distributed nor sub-licensed without explicit permission
from the copyright owner.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Should any questions arise concerning your usage of this Software, or to
request permission to distribute this Software, please contact the copyright
holder at http://nightdev.com/contact
Unofficial TLDR:
Free to modify for personal use
Need permission to distribute the code
Can't sell addon or features of the addon
- Install nodejs.
- Run
npm install
within the BetterTTV directory.
We use gulp to concatenate all of the files and templates into one. You can either make gulp watch for changes or run it manually.
From the BetterTTV directory, run
gulp
or
gulp watch
We include a test module that creates a server to imitate the CDN.
To use it, we must first modify the hosts file on your computer.
*on nix:
echo "127.0.0.1 cdn.betterttv.net" | sudo tee -a /etc/hosts
on Windows:
add 127.0.0.1 cdn.betterttv.net
to %SystemRoot%\system32\drivers\etc\hosts
Now just run the following command from the BetterTTV directory.
*on nix:
sudo npm test
on Windows you need an elevated command prompt:
npm test
A webserver will start and you can visit Twitch in your browser and browse normally. Files not included in the repo are pulled from the actual server, so everything works.
Note: As of June, 2015 SSL is now used. The localhost webserver presents a self-signed certificate, which browsers will by default reject.
For Google Chrome, you can use the --ignore-certificate-errors
flag to ignore the self-signed certificate. Only run Google Chrome with this flag enabled when testing, since it will accept all certificates.
For Firefox, you can add an exception to Firefox:
Firefox -> Tools -> Advanced -> Certificates -> View Certificates -> Servers -> Add Exception
Debug Messages:
In order to receive debug messages inside the browser's console log, you must toggle the consoleLog localStorage setting.
Type this in the JavaScript console to enable console logging:
BetterTTV.settings.save('consoleLog', true);
We use ESLint to ensure a consistent code style and avoid buggy code.
Running gulp
will automatically check for any errors in the code. Please fix any errors before creating a pull request. Any warnings produced prior to your changes can be ignored.
Live Linting with Sublime Text:
If you use Sublime Text as your text editor, you can set it up to highlight any errors that ESLint would throw in real-time.
- Get ESLint using
npm install eslint
- Install Sublime Package Control
- Install SublimeLinter
- Install SublimeLinter-eslint