Commit Graph

469 Commits

Author SHA1 Message Date
Lawrence Hook 3f4b42b2de Update qs to 6.14.2 to fix low-severity DoS vulnerability
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 18:49:28 -05:00
Lawrence Hook 8825666512 Merge the monetization feature branch.
Add RYS Premium subscription system

Introduce optional paid tier with sign-in, Stripe billing, and premium
feature gating. Core features remain free. Includes Node.js server for
auth, payments, and license management.

Extension changes:
- Sign-in flow with magic link email
- Premium/upgrade/account modals with branded UI
- Premium feature gating (60+ advanced settings)
- Password lock and scheduling (premium)
- Fix "hide all but first row" for YouTube's new flat homepage DOM
- Hide sidebar ad panels by default
- Enable "Hide all Shorts" by default

Server:
- Magic link auth with rate limiting
- Stripe checkout, webhooks, and billing portal
- JWT-based license tokens
- AWS SES transactional emails (welcome, sign-in, cancellation)
- Grandfathered donor support

Also adds CI workflow, server test suite, and extension unit tests.
2026-02-15 18:45:37 -05:00
Lawrence Hook a76f69804b update description in README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 20:45:35 -05:00
Lawrence Hook b5d1384ca8 update "Why I made it" section in README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 20:44:26 -05:00
Lawrence Hook 18b64708b6 update version to 4.3.71 2026-02-08 20:14:23 -05:00
Lawrence Hook 299bd68b73 fix: scope yt-thumbnail-view-model shrink to grid cards only
Prevents sidebar thumbnails from being enlarged by the min-width rule.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 20:07:55 -05:00
Lawrence Hook a6924318e0 fix: shrink thumbnails for new YouTube homepage thumbnail element
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 20:04:44 -05:00
Lawrence Hook 980ebd3c90 fix: update extra rows selector for new YouTube homepage structure
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 19:56:16 -05:00
Lawrence Hook ef85e9ef02 feat: add option to hide YouTube Playables (closes #158, closes #175)
Also auto-select Homepage section in options when on YouTube homepage.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 19:50:37 -05:00
Sidhant a3542e42da fix: disable extension on YouTube Music (closes #152) (#168) 2026-02-07 17:52:29 -05:00
prinixoz edbadf2e54 added feature to always be in theater mode (#195)
Co-authored-by: prinixoz <prinixoz@gmail.com>
2026-02-07 17:40:08 -05:00
prinixoz f8379f3e88 fixed shrinking issue in channel tab (#196)
* fixed shrinking issue in channel tab

* fixed playlist video shirinking and overlapping in channel pages

* fixed post shirinking

* style: fix whitespace in shrink thumbnails CSS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: prinixoz <prinixoz@gmail.com>
Co-authored-by: Lawrence Hook <lawrencehook@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 17:36:07 -05:00
GeleArthur 3ef38334e9 Hide bell notifcations number in page titlle (#199)
* Added removing the bell in the title

* add comment on what it does

* Start of title

* style: fix spacing in if statement

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Lawrence Hook <lawrencehook@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 17:29:11 -05:00
prinixoz 4b4fb7722d hide result description (#197)
* hide description #188

* add idToShortId entry and fix extra whitespace

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: prinixoz <prinixoz@gmail.com>
Co-authored-by: Lawrence Hook <lawrencehook@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 17:27:27 -05:00
Lawrence Hook 182f6489ef add deprecation comment for disable_playlist_autoplay
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 16:55:17 -05:00
Lawrence Hook a69b92a6b8 deprecate disable_playlist_autoplay setting
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 16:44:17 -05:00
Lawrence Hook 0e21939821 fix: remove duplicate function from bad merge 2026-02-04 20:16:53 -05:00
Lawrence Hook 881514d71c update versions 2026-02-04 20:14:13 -05:00
Lawrence Hook 13d610181e Merge main into released 2026-02-04 20:11:53 -05:00
Lawrence Hook c3c7db3315 perf: optimize polling and reduce CPU usage
Options page:
- Pause timeLoop when popup is hidden (Page Visibility API)
- Use { once: true } for log prompt button listeners
- Remove stray console.log in settings import

Content script:
- Slow polling from 100ms to 500ms after page settles (was stuck at 100ms)
- Stop playlist autoplay interval once manager is found
- Only check dismiss buttons every 5th iteration
- Only check reveal boxes for first 30 iterations
- Only query clip button DOM if setting is enabled
- Skip subscriptions page queries if no sub-settings enabled
- Fix ad skip button selector for current YouTube UI

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 20:06:14 -05:00
Lawrence Hook 77d36b1360 chore: complete remaining quick wins from TODO
- Move duplicated YouTube URL regexes to shared/utils.js
- Delete commented-out code blocks (theater mode, playback speed, cookie manipulation, debug vars)
- Add Page Visibility API to pause polling when tab is hidden
- Update TODO.md to reflect completed items

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 19:28:12 -05:00
Lawrence Hook 1dbea5ab66 chore: clean up dead code and fix naming
- Remove debug console.log statements in options/main.js
- Remove unused TEMPLATE_FIELDSET variable
- Fix SEC_IN_WEEK → MIN_IN_WEEK (it was actually minutes)
- Remove dead setCookie/getCookie functions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 19:22:30 -05:00
Lawrence Hook ab97952e84 feat: change analytics from opt-out to opt-in
- Add non-blocking bottom banner prompting users to enable logging
- Default log_enabled to false, track user response with log_prompt_answered
- Banner shows until user clicks Sure/No thanks, dismiss hides for session only
- Update settings menu icon from dots to gear
- Widen sidebar to prevent "Video Player" text wrapping

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 19:20:59 -05:00
Lawrence Hook 6f23fbc369 update git ignore 2026-01-31 16:22:39 -05:00
Lawrence Hook 93e2ea492d update versions 2026-01-28 21:35:57 -05:00
Lawrence Hook f894715b62 version 4.3.68 2026-01-28 21:31:06 -05:00
Lawrence Hook e8af6f0b7b feat: add announcement banner to YouTube homepage and revamp reveal boxes
- Add shared banner system (src/shared/banners.js) for extensible banner config
- Display RYS-branded announcement banner on YouTube homepage and options page
- Banner pushes down YouTube page content with CSS variable for height
- Revamp reveal suggestion boxes with polished two-row layout and RYS branding
- Add per-surface reveal settings (homepage/sidebar/end-of-video) with migration
- Consolidate colors and dimensions into CSS variables
- Cache reveal box config at module level for performance

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 21:23:51 -05:00
Lawrence Hook 769d7a150f update versions 2026-01-27 21:39:36 -05:00
Lawrence Hook 2e524c0d6c Merge branch 'released' 2026-01-27 21:38:58 -05:00
Lawrence Hook 182f3cb3ee version 4.3.67
Squashed commit of the following:

commit cfefa197ec
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Jan 27 20:43:02 2026 -0500

    feat: add close and dismiss buttons to announcement banner

    Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

commit b193516096
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Jan 27 19:57:25 2026 -0500

    feat: add announcement banner for upcoming premium features

    Adds a dismissible banner at the top of the options page announcing
    upcoming premium features with a link to the explainer page.

    Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

commit 3d021923e6
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Jan 24 20:43:36 2026 -0500

    update versions

commit 4fa9023ef4
Merge: 3b5f50f a774514
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Jan 24 20:43:08 2026 -0500

    Merge branch 'released'

commit 3b5f50fa82
Author: Lawrence Hook <6572030+lawrencehook@users.noreply.github.com>
Date:   Sat Jan 24 20:37:53 2026 -0500

    feat(extension): revamp donate/feedback pages and polish options UI (#189)

    - Redesign donors page with modern card-based tier system
    - Redesign feedback page with contact grid and cleaner layout
    - Both pages now fit within 600px without scrolling
    - Apply subtle UI improvements to main options page:
      - System fonts, softer borders, hover states
      - Improved sidebar, menus, and footer styling
      - Denser option spacing for info-density

    Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

commit 8ca3247d68
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 30 17:41:59 2025 -0500

    claude recommends some TODOs

commit e6418d6aaa
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 23 15:48:47 2025 -0500

    update versions

commit 89d7b09629
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 23 15:41:38 2025 -0500

    fix whitespace

commit b46281aeef
Author: Jagan <sreejaganj@gmail.com>
Date:   Wed Dec 24 02:07:39 2025 +0530

    fix(sidebar): correct mapping of sidebar section (#186)

    Youtube changed the structure of the sidebar, this caused several toggle target issues in the extension.
    -> Hiding you/library removed the section contents but left a small empty container.
    -> Hiding other sections hid the wrong ones. Explore hid you/library completely, more from youtube hid explore, settings hid more from youtube. And couldn't hide settings at all.

    This commit updates the CSS to match the new DOM structure.

    -> Replaced nth-child with nth-of type
    -> Realigned indexes to match new structure.
      - `remove_sub_section` targets the 2nd section (Subscriptions)
      - `remove_quick_links_section` targets the 3rd section (You / Library)
      - `remove_explore_section` targets the 4th section (Explore)
      - `remove_more_section` targets the 5th section (More from YouTube)
      - `remove_settings_section` targets the 6th section (Settings)
      - `remove_footer_section` still hides `#guide-renderer > #footer`
    -> Modified the order of the buttons in src/content-script/main.css to match the order in the sidebar.

    Resolves: #185

commit ecab1e69c6
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Oct 21 22:49:04 2025 -0400

    update version
2026-01-27 21:38:12 -05:00
Lawrence Hook cfefa197ec feat: add close and dismiss buttons to announcement banner
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 20:43:02 -05:00
Lawrence Hook b193516096 feat: add announcement banner for upcoming premium features
Adds a dismissible banner at the top of the options page announcing
upcoming premium features with a link to the explainer page.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 19:57:25 -05:00
Lawrence Hook 3d021923e6 update versions 2026-01-24 20:43:36 -05:00
Lawrence Hook 4fa9023ef4 Merge branch 'released' 2026-01-24 20:43:08 -05:00
Lawrence Hook a77451499b version 4.3.66
Squashed commit of the following:

commit 3b5f50fa82
Author: Lawrence Hook <6572030+lawrencehook@users.noreply.github.com>
Date:   Sat Jan 24 20:37:53 2026 -0500

    feat(extension): revamp donate/feedback pages and polish options UI (#189)

    - Redesign donors page with modern card-based tier system
    - Redesign feedback page with contact grid and cleaner layout
    - Both pages now fit within 600px without scrolling
    - Apply subtle UI improvements to main options page:
      - System fonts, softer borders, hover states
      - Improved sidebar, menus, and footer styling
      - Denser option spacing for info-density

    Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

commit 8ca3247d68
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 30 17:41:59 2025 -0500

    claude recommends some TODOs

commit e6418d6aaa
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 23 15:48:47 2025 -0500

    update versions

commit 89d7b09629
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Dec 23 15:41:38 2025 -0500

    fix whitespace

commit b46281aeef
Author: Jagan <sreejaganj@gmail.com>
Date:   Wed Dec 24 02:07:39 2025 +0530

    fix(sidebar): correct mapping of sidebar section (#186)

    Youtube changed the structure of the sidebar, this caused several toggle target issues in the extension.
    -> Hiding you/library removed the section contents but left a small empty container.
    -> Hiding other sections hid the wrong ones. Explore hid you/library completely, more from youtube hid explore, settings hid more from youtube. And couldn't hide settings at all.

    This commit updates the CSS to match the new DOM structure.

    -> Replaced nth-child with nth-of type
    -> Realigned indexes to match new structure.
      - `remove_sub_section` targets the 2nd section (Subscriptions)
      - `remove_quick_links_section` targets the 3rd section (You / Library)
      - `remove_explore_section` targets the 4th section (Explore)
      - `remove_more_section` targets the 5th section (More from YouTube)
      - `remove_settings_section` targets the 6th section (Settings)
      - `remove_footer_section` still hides `#guide-renderer > #footer`
    -> Modified the order of the buttons in src/content-script/main.css to match the order in the sidebar.

    Resolves: #185

commit ecab1e69c6
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Tue Oct 21 22:49:04 2025 -0400

    update version
2026-01-24 20:40:56 -05:00
Lawrence Hook 3b5f50fa82 feat(extension): revamp donate/feedback pages and polish options UI (#189)
- Redesign donors page with modern card-based tier system
- Redesign feedback page with contact grid and cleaner layout
- Both pages now fit within 600px without scrolling
- Apply subtle UI improvements to main options page:
  - System fonts, softer borders, hover states
  - Improved sidebar, menus, and footer styling
  - Denser option spacing for info-density

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 20:37:53 -05:00
Lawrence Hook 8ca3247d68 claude recommends some TODOs 2025-12-30 17:41:59 -05:00
Lawrence Hook 1aea161b7a fix whitespace 2025-12-23 15:51:14 -05:00
Jagan ac66e7ebd7 fix(sidebar): correct mapping of sidebar section (#186)
Youtube changed the structure of the sidebar, this caused several toggle target issues in the extension.
-> Hiding you/library removed the section contents but left a small empty container.
-> Hiding other sections hid the wrong ones. Explore hid you/library completely, more from youtube hid explore, settings hid more from youtube. And couldn't hide settings at all.

This commit updates the CSS to match the new DOM structure.

-> Replaced nth-child with nth-of type
-> Realigned indexes to match new structure.
  - `remove_sub_section` targets the 2nd section (Subscriptions)
  - `remove_quick_links_section` targets the 3rd section (You / Library)
  - `remove_explore_section` targets the 4th section (Explore)
  - `remove_more_section` targets the 5th section (More from YouTube)
  - `remove_settings_section` targets the 6th section (Settings)
  - `remove_footer_section` still hides `#guide-renderer > #footer`
-> Modified the order of the buttons in src/content-script/main.css to match the order in the sidebar.

Resolves: #185
2025-12-23 15:51:09 -05:00
Lawrence Hook 6b2fd14af6 update version 2025-12-23 15:50:59 -05:00
Lawrence Hook e6418d6aaa update versions 2025-12-23 15:48:47 -05:00
Lawrence Hook 89d7b09629 fix whitespace 2025-12-23 15:41:38 -05:00
Jagan b46281aeef fix(sidebar): correct mapping of sidebar section (#186)
Youtube changed the structure of the sidebar, this caused several toggle target issues in the extension.
-> Hiding you/library removed the section contents but left a small empty container.
-> Hiding other sections hid the wrong ones. Explore hid you/library completely, more from youtube hid explore, settings hid more from youtube. And couldn't hide settings at all.

This commit updates the CSS to match the new DOM structure.

-> Replaced nth-child with nth-of type
-> Realigned indexes to match new structure.
  - `remove_sub_section` targets the 2nd section (Subscriptions)
  - `remove_quick_links_section` targets the 3rd section (You / Library)
  - `remove_explore_section` targets the 4th section (Explore)
  - `remove_more_section` targets the 5th section (More from YouTube)
  - `remove_settings_section` targets the 6th section (Settings)
  - `remove_footer_section` still hides `#guide-renderer > #footer`
-> Modified the order of the buttons in src/content-script/main.css to match the order in the sidebar.

Resolves: #185
2025-12-23 15:37:39 -05:00
Lawrence Hook ecab1e69c6 update version 2025-10-21 22:49:04 -04:00
Lawrence Hook 64c63a451a Merge branch 'main' into released 2025-10-21 22:48:31 -04:00
Hussain Elemam 2922214070 remove end of video suggestions for new youtube UI (#179)
* remove end of video suggestions for new youtube UI

---------

Co-authored-by: Lawrence Hook <6572030+lawrencehook@users.noreply.github.com>
2025-10-21 22:44:18 -04:00
Lawrence Hook 102c668fbb update manifest version 2025-07-14 20:12:56 -04:00
Sidhant 8f49fda8f5 Hide shorts from search results (closes #165) (#166)
* Hide shorts from search results

---------

Co-authored-by: Lawrence Hook <lawrencehook@gmail.com>
2025-07-12 16:05:13 -04:00
Lawrence Hook 2e13c49881 Update manifest version 2024-12-17 19:42:43 -05:00
Lawrence Hook e1e77a2931 Version 4.3.62
Squashed commit of the following:

commit 5078750703
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sun Dec 15 12:33:23 2024 -0500

    add semicolon

commit 8dd10345db
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sun Dec 15 12:30:50 2024 -0500

    Abbreviate anon donors

commit 5b47e2e636
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sun Dec 15 12:13:07 2024 -0500

    Squashed commit of the following:

    commit 42f6ef437a4054f2aed6467d8c85a8c1ec7f03c2
    Author: Lawrence Hook <lawrencehook@gmail.com>
    Date:   Sun Dec 15 12:12:01 2024 -0500

        Implement password removal. Fix button styling

    commit 6503b2ac8460b148a17e42015a732b248048fa40
    Author: Lawrence Hook <lawrencehook@gmail.com>
    Date:   Sun Dec 15 11:38:32 2024 -0500

        Convert to password attributes to snake_case and add them to import/export.

    commit 5f6f0e95e693a3ba8c2c59dc7311e30cd9af096d
    Merge: 06edb5a e9b2af8
    Author: Lawrence Hook <lawrencehook@gmail.com>
    Date:   Sat Dec 14 19:27:49 2024 -0500

        Merge branch 'main' into feature/password

    commit 06edb5a13151e6228723ecae409c75fea74ede37
    Author: Lawrence Hook <lawrencehook@gmail.com>
    Date:   Sat Dec 14 19:26:54 2024 -0500

        push progress on password feature

commit e9b2af8f87
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 11:19:29 2024 -0500

    Add an option to shrink thumbnails

commit bb5f4331ef
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 11:08:16 2024 -0500

    Add an option to remove the clip button

commit 615cfad300
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 10:43:28 2024 -0500

    Fix the click on the "skip ad" button

commit f7cefd6161
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 10:31:11 2024 -0500

    Fix the 'center contents' option

commit 016194e31d
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 10:24:25 2024 -0500

    Fix subs page option for 'upcoming' videos. Fix toggles in the video player page.

commit b5b7895afe
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Sat Dec 14 09:55:16 2024 -0500

    Disable copy/paste for code entry

commit 0bf3cc95fc
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Fri Dec 13 21:56:13 2024 -0500

    Update manifest versions

commit 71dfef04cc
Merge: eb3ca2e fe4e2bd
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Fri Dec 13 21:55:35 2024 -0500

    Merge branch 'released'

commit eb3ca2e13e
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Fri Dec 13 21:55:06 2024 -0500

    Fix permissions

commit 4cec2ebe85
Author: Lawrence Hook <lawrencehook@gmail.com>
Date:   Fri Jun 7 17:40:18 2024 -0400

    update manifest versions
2024-12-17 19:38:40 -05:00