Generated: 2026-03-14
Project: UserJS Stack: JavaScript (Userscripts), CSS (Userstyles) A collection of custom userscripts and userstyles for various websites to enhance functionality or modify appearance.
The project is a flat collection of directories and files, where each unit typically represents a single script or style.
Ask-AI-Anywhere/: A script to send web content (text & images) to various AI providers (Gemini, ChatGPT, etc.).Baidu-Search-Font-Size++/: Userstyle to adjust font sizes on Baidu search.Chrome-Scrollbar-Beautify/: Userstyle for scrollbar customization.Disable-SendBeacon/: Script to disablenavigator.sendBeacon.FT-Auto-Full-Article/: Script for Financial Times to automatically show full articles.GitHub-Repo-Status/: GitHub Repository Status (Creation date and popular forks).GitHub-File-History/: GitHub File History (Open in githistory.xyz with ⚡️).GitHub-Star-History/: GitHub Star History.Qireader-Keymap/: Keybinding customizations for Qireader.Rename-Zhuhu-Daily-Title/: Script to rename Zhihu Daily titles for better clarity.RSS-to-Clipboard/: Script to copy RSS feed URLs to the clipboard.RSS-to-Inoreader/: Script to quickly subscribe to RSS feeds in Inoreader.Video-Auto-Fullscreen/: Script to automatically fullscreen videos.XYZ-Download/: Download helper for specific sites.
There is no build system. Scripts are designed to be installed directly into a browser extension.
| Action | Description |
|---|---|
| Install | Open .user.js in a browser with a Userscript manager (Tampermonkey, Violentmonkey, etc.) |
| Style | Import .user.css into a Userstyle manager (Stylus) |
- Language: JavaScript (ES6+), CSS.
- Metadata: Every Userscript must start with a
// ==UserScript==block. Standard tags include:@namespace:https://blog.xlab.app/@author:tmr@supportURL:https://github.com/ttttmr/UserJS(Link to the repository)@version: Standard format isX.Y. Default starts at0.1. The minor versionYis a counter (e.g.,0.9->0.10). IncrementYfor each update. Major versionXis only bumped for significant changes.
- Security: Avoid using
innerHTMLto prevent XSS. UsetextContent,innerText, ordocument.createElementwhen dealing with user-controlled or external data. - APIs: Extensive use of Greasemonkey/Tampermonkey
GM_*APIs for persistent storage (GM_setValue), networking (GM_xmlhttpRequest), and menu commands (GM_registerMenuCommand). - Patterns:
- Use IIFE or modules for scoping.
- DOM manipulation using native
querySelector,MutationObserver, anddocument.createElement. - Handling SPAs (Single Page Applications) via listeners for events like
turbo:render(for GitHub) or custom observers.
- Source: Each script's root or directory (e.g.,
Ask-AI-Anywhere/user.js). - Docs: Individual
README.mdfiles within directories if available.
- Many scripts target specific DOM structures; these may break if the target website updates its UI.
Ask-AI-Anywhereis the most complex script, utilizing aDomSelectorclass and handling multiple AI providers via a configuration object.