Skip YouTube video sponsors (browser extension)
Find a file
2021-02-24 21:10:05 -05:00
.github/workflows Revert "Don't include non signed Firefox extension in release assets" 2020-12-16 13:41:23 -05:00
manifest Increase version number 2021-02-24 21:10:05 -05:00
oss-attribution feat(lint): add default .eslintrc.js 2020-12-12 22:56:14 +01:00
public Log returned data when video info failed to load 2021-01-27 22:27:23 -05:00
src Lower retry frequency 2021-02-24 21:08:54 -05:00
webpack Add back copy plugin changes 2020-08-27 21:27:43 -04:00
.editorconfig Revert dependency changes 2020-08-27 21:18:21 -04:00
.eslintrc.js refactor(lint): replace self-equals-this code with arrow functions 2020-12-24 11:59:24 +01:00
.gitignore Added config to gitignore. 2020-02-01 16:27:58 -05:00
config.json.example Update config.json.example 2020-05-17 19:42:11 -04:00
crowdin.yml Update Crowdin configuration file 2020-04-14 23:44:15 -04:00
jest.config.js Revert dependency changes 2020-08-27 21:18:21 -04:00
LICENSE Update LICENSE 2019-07-30 18:38:07 -04:00
package-lock.json Update dependencies 2020-12-16 00:53:15 -05:00
package.json Update dependencies 2020-12-16 00:53:15 -05:00
README.md readme license fix 2021-01-30 15:01:43 -05:00
tsconfig.json Switched notice to react 2020-02-25 00:38:03 -05:00

Logo
Logo by @munadikieh

SponsorBlock

Download: Chrome/Chromium | Firefox | Android | Edge | Website | Stats

3rd-Party Ports: MPV | Kodi | Safari for MacOS | Chromecast | iOS

Badge Badge Badge Badge Badge

SponsorBlock is an open-source crowdsourced browser extension to skip sponsor segments in YouTube videos. Users submit when a sponsor happens from the extension, and the extension automatically skips sponsors it knows about. It also supports skipping other categories, such as intros, outros and reminders to subscribe.

It also supports Invidio.us.

Translate: Crowdin

Important Links

See the Wiki for important links.

Server

The backend server code is available here: https://github.com/ajayyy/SponsorBlockServer

It is a simple SQLite database that will hold all the timing data.

To make sure that this project doesn't die, I have made the database publicly downloadable at https://sponsor.ajay.app/database.db (License). If you are planning on using the database in another project, please read the API Docs page for more information.

The dataset and API are now being used in some ports as well as a neural network.

A previous project attempted to create a neural network to predict when sponsored segments happen. That project is sadly abandoned now, so I have decided to attempt to revive this idea starting from a crowd-sourced system instead.

API

You can read the API docs here.

Building

Rename config.json.example to config.json and adjust configuration as desired.

There are also other build scripts available. Install npm, then run npm install in the repository to install dependencies.

Run npm run build to generate a Chrome extension.

Use npm run build:firefox to generate a Firefox extension.

The result is in dist. This can be loaded as an unpacked extension

Developing with a clean profile

Run npm run dev to run the extension using a clean browser profile with hot reloading. Use npm run dev:firefox for Firefox. This uses web-ext run.
Known chromium bug: Extension is not loaded properly on first start. Visit chrome://extensions/ and reload the extension.

Attribution Generation

If you contribute and add a dependency, update the attribution file using the following steps:

Make sure the attribution generator is installed: npm i -g oss-attribution-generator

generate-attribution
mv ./oss-attribution/attribution.txt ./public/oss-attribution/attribution.txt

Credit

The awesome Invidious API was previously used.

Originally forked from YTSponsorSkip, but zero code remains.

Icons made by:

License

This project is licensed under GNU GPL v3