Skip to content

enrych/toppings

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Toppings on YouTube

A customizable browser extension that gives you total control over YouTube—track playlist runtimes, fine-tune playback speed, auto-scroll Shorts, set custom seek durations, and more. Take control of your YouTube like never before.


Why Toppings?

  • Track Playlist Runtimes: Know exactly how much time you’ll spend binging playlists.
  • Custom Playback Controls: Set precise playback speeds and seek durations.
  • Auto-Scroll Shorts: Enjoy an uninterrupted flow of Shorts with automatic scrolling.
  • Deep Personalization: Tailor every feature to fit your workflow with custom keybindings.
  • Privacy-First: No data collection—your browsing remains yours.

Get Started


Development

Here’s how to set up Toppings for local development:

Prerequisites

Ensure the following tools are installed:

📁 Project Structure

The repository is organized into three main directories:

  1. web-ext: Contains the browser extension code.
  2. backend: Server-side logic built with Cloudflare Workers.
  3. website: The official homepage of the Toppings extension, built with Next.js.

🏡 Local Development Setup

Setting Up the Extension

  1. Clone the repository:

    git clone https://github.com/enrych/toppings.git
    cd toppings/web-ext
  2. Install dependencies:

    bun install
  3. Start development mode:

    For Chrome:

    bun run dev

    For Firefox:

    bun run dev:firefox

Setting Up the Server (Optional)

Some features require backend functionality. You can run the server locally using Cloudflare Workers.

  1. Navigate to the backend directory:

    cd ../backend
  2. Install wrangler (if not already installed):

    npm install -g wrangler
  3. Add your Google YouTube API secret in .dev.vars:

    GOOGLE_SECRET=your-google-youtube-api-key
  4. Start the server:

    wrangler dev

Running the Website

  1. Navigate to the website directory:

    cd ../website
  2. Install dependencies:

    bun install
  3. Start the development server:

    bun run dev

Feedback and Support

Feedback is always welcome! If you enjoy Toppings, consider:

Use these channels to get involved:

  • Discussions: For questions or feature ideas, join the GitHub Discussions.
  • Issues: Report bugs or request features in the Issues section.
  • Wiki: Find detailed documentation in the GitHub wiki.

Support the Project

Toppings is free and open-source. If you find it helpful, consider supporting the development through sponsorships.

Your support helps improve Toppings and keeps it sustainable.


License

Toppings is licensed under the GPL-3.0 License. You’re free to use, modify, and distribute the extension as long as your work complies with the GPL-3.0 terms.

Happy coding! 😊