Skip to content
This repository was archived by the owner on Sep 24, 2025. It is now read-only.

loukamb/Knockster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Knockster

ViolentMonkey/GreaseMonkey script that extends Knockout with some quality-of-life features. Duct-tape quality; here be dragons.

Note

While still very usable as of the writing of this comment, I've discontinued the development of this script as I've left Knockout. I've found it increasingly difficult to enjoy its community and found some tolerated behaviors unreconcilable with my idea of human dignity. That said, I wish its people the best and hope they persevere in the face of adversity.

Extensions

Available

  • Link information: Appends the underlying destination of an external link after its text in a post. Useful to detect disguised links.1
  • Homepage improvements:
    • Adds a button to subforum categories to hide them. A menu is added at the bottom of the homepage to restore them.2
    • NEW! Pin subforums to the top of the homepage for easy access.
  • NEW! User filters: Mute avatars, backgrounds, and users, either globally or individually.
  • Hide bad ratings: Removes negative reactions from posts. Doesn't stop you from rating them.
  • 4chan mode: Makes everyone anonymous. Same name, same role color. Combine with avatar/background remove for the full experience.3
  • Thumbnailer: Downsizes images in posts. Click the images to expand them to full-screen.
  • Volume adjuster: Sets a default volume level for embed videos.4
  • Unembedder: Converts YouTube embeds to thumbnails so they only load when locked, and fixes some proportions.4
  • Reply resize: Allows you to adjust the vertical height of the reply box.5

Planned

  • Improved mechanism for detecting when the interface finishes loading.

Installation

Click here to install the latest version of the script. ViolentMonkey/GreaseMonkey must be installed.

Development

Building

Run pnpm build to create a bundled, minified version of the script into dist/index.js. Requires pnpm to be installed and a relatively recent version of Node.js. esbuild is used for bundling.

For convenience, if you are on Linux and you have wl-clipboard installed, run pnpm build:copy to compile and copy the resulting code to clipboard so you can paste it into a *Monkey extension.

Modules

Write new modules in /src/modules. Include a page function in your exported module to perform work after the page loads and the interface finishes rendering. Include a load function to perform work as soon as possible.

Import your module's export into /src/module.ts and add it to the exported array.

License

Licensed under the GPLv3. See here for more information.

Footnotes

  1. As requested in https://knockout.chat/thread/70864

  2. As requested in https://knockout.chat/thread/70105

  3. As requested in https://knockout.chat/thread/70975/#post-2568254

  4. As requested in https://knockout.chat/thread/70975/#post-2572022 2

  5. As requested in https://knockout.chat/thread/71088

About

Extensions for the Knockout website.

Resources

License

Stars

Watchers

Forks