Git Product home page Git Product logo

sponsorblock's Introduction

Logo
Logo by @munadikieh

SponsorBlock

Download: Chrome/Chromium | Firefox | Android | Edge | Safari for MacOS and iOS | Website | Stats

3rd-Party Ports: MPV | Kodi | 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

To make sure that this project doesn't die, I have made the database publicly downloadable at https://sponsor.ajay.app/database (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.

API

You can read the API docs here.

Building

You must have Node.js 16 and npm installed.

  1. Copy the file config.json.example to config.json and adjust configuration as desired.

    • You will need to repeat this step in the future if you get build errors related to CompileConfig. This can happen for example when a new category is added.
  2. Run npm install in the repository to install dependencies.

  3. Run npm run build:dev (for Chrome) or npm run build:dev:firefox (for Firefox) to generate a development version of the extension with source maps.

    • You can also run npm run build (for Chrome) or npm run build:firefox (for Firefox) to generate a production build.
  4. The built extension is now in dist/. You can load this folder directly in Chrome as an unpacked extension, or convert it to a zip file to load it as a temporary extension in Firefox.

Developing with a clean profile and hot reloading

Run npm run dev (for Chrome) or npm run dev:firefox (for Firefox) to run the extension using a clean browser profile with hot reloading. This uses web-ext run.

Known chromium bug: Extension is not loaded properly on first start. Visit chrome://extensions/ and reload the extension.

For Firefox for Android, use npm run dev:firefox-android -- --adb-device <ip-address of the device>. See the Firefox documentation for more information.

Credit

The awesome Invidious API was previously used, and the server is now using NewLeaf as a to get video info from YouTube.

Originally forked from YTSponsorSkip, but very little code remains.

Icons made by:

License

This project is licensed under GNU LGPL v3 or any later version

sponsorblock's People

Contributors

ajayyy avatar ndevtk avatar mchangrh avatar florianzahn avatar skyfrk avatar fosefx avatar alecrust avatar mbledkowski avatar aronhk avatar dependabot[bot] avatar joe-dowd avatar mruy avatar maximmax42 avatar mini-bomba avatar opl- avatar picklenik avatar wilkmaciej avatar github-actions[bot] avatar joedowdcap avatar choromanski avatar argn0 avatar lartza avatar bershanskiy avatar jplsek avatar otiel avatar owendaprile avatar ptalmeida avatar isaackd avatar rafern avatar sebm253 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.