awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
quoid avatar

quoid/userscripts

0
View on GitHub↗
4,349 stars·384 forks·Swift·gpl-3.0·20 viewsquoid.github.io/userscripts↗

Userscripts

Userscripts is a Safari browser extension that installs and runs custom JavaScript and CSS on websites through Apple's content script injection system. It provides a privileged execution context that allows userscripts to perform cross-origin HTTP requests and access clipboard functionality beyond standard browser sandbox restrictions.

The extension uses metadata tags like @match, @run-at, and @weight to control precisely when and where scripts execute on web pages. It includes a built-in code editor with syntax highlighting and linting for modifying scripts directly, and supports automatic synchronization of local scripts with newer versions from configured remote URLs using @updateURL metadata.

Scripts are stored as files in a user-selected filesystem directory, enabling external editing and version control. The extension also provides per-script persistent key-value storage across browser sessions, dynamic CSS injection via GM.addStyle, and programmatic tab management from within userscripts. It is installed through Apple's App Store on iOS 15.1+ and macOS 12+ with Safari 14.1+.

Features

  • Userscript Managers - A browser extension that installs and runs custom JavaScript and CSS on websites through Safari's content script injection system.
  • Userscript Metadata Definitions - Uses tags like @match, @run-at, @weight, and @require to control when and where a userscript executes.
  • Userscript Lifecycle Controllers - Controls script installation, update checking, and execution timing through parsed metadata tags like @match, @version, and @run-at.
  • Cross-Origin Request Engines - Enables userscripts to perform HTTP requests to any domain via GM.xmlHttpRequest, bypassing same-origin policy through the privileged background context.
  • Cross-Origin HTTP Request APIs - Provides GM.xmlHttpRequest for cross-origin requests with configurable headers, timeouts, and methods.
  • Privileged Browser - Provides a persistent background execution environment that bypasses standard browser sandbox restrictions for network requests and clipboard access.
  • Browser Extension Script Managers - Provides a sidebar, editor, and controls to add, edit, enable, disable, and delete custom JavaScript and CSS files.
  • Script Update Management - Checking remote sources for newer script versions and automatically downloading updates when metadata specifies version and update URLs.
  • Content Script Injection Architectures - Injects user scripts into web pages at configurable lifecycle points using Safari's content script API and metadata-driven matching rules.
  • Per-Page Injection Controls - Matches userscripts to domains using metadata tags and allows toggling injection on/off for individual scripts.
  • Metadata-Driven Injection Engines - Matches scripts to domains using @match, @run-at, and @weight tags for precise injection timing and targeting.
  • Page-Specific Script Execution - Runs user-installed scripts automatically when a matching website loads, modifying its behavior or appearance.
  • Metadata-Driven Injection Controls - Matching userscripts to specific domains using metadata tags and controlling injection timing and execution context per page.
  • Userscript File Storage - Reads and writes userscript files directly from a user-selected filesystem directory, enabling external editing and version control.
  • Key-Value Persistence Stores - Offers per-script persistent data storage across browser sessions using GM.setValue and GM.getValue APIs backed by Safari's extension storage.
  • Userscript Key-Value Stores - Offers GMsetValue and GMgetValue APIs for key-value data that persists across browser sessions per script.
  • Automatic Script Updates - Automatically synchronizes local userscripts with newer versions from configured remote URLs using @updateURL metadata.
  • Inline Script Editors - Provides a built-in code editor with syntax highlighting, linting, and bracket matching for modifying scripts directly within the extension.
  • Userscript - Includes a built-in editor with syntax hints, linting, and bracket matching for modifying userscripts directly.
  • Script Directory Selectors - Selects a directory on the filesystem where the extension reads and writes userscript files.
  • CSS Injection - Injecting dynamic CSS rules into web pages to override or extend site appearance using GM.addStyle from userscripts.
  • Dynamic Style Injections - Injects custom CSS rules into web pages at runtime using GM.addStyle, overriding or extending site styles programmatically.

Star history

Star history chart for quoid/userscriptsStar history chart for quoid/userscripts

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Userscripts

Similar open-source projects, ranked by how many features they share with Userscripts.
  • violentmonkey/violentmonkeyviolentmonkey avatar

    violentmonkey/violentmonkey

    7,874View on GitHub↗

    Violentmonkey is a userscript manager extension and JavaScript injection framework. It allows users to install and manage custom scripts and CSS to modify the behavior and appearance of websites based on metadata-driven trigger conditions. The project functions as a cloud-synced script manager, backing up and synchronizing scripts across different devices using external cloud storage services. It also serves as a cross-origin request bridge, providing a communication layer that enables scripts to bypass the same-origin policy to fetch data. The tool covers a broad range of browser automation

    JavaScriptuserscripts-supportviolentmonkeywebextensions
    View on GitHub↗7,874
  • greasemonkey/greasemonkeygreasemonkey avatar

    greasemonkey/greasemonkey

    2,563View on GitHub↗

    Greasemonkey is a Firefox extension that functions as a JavaScript userscript engine and manager, executing custom scripts on target web pages to automate tasks and alter page functionality. It injects user code into the isolated execution context of web pages before or during page load, allowing users to modify content, behavior, and styling dynamically on specific websites. The extension integrates natively into the browser extension system using background processes and messaging interfaces. It parses special comment blocks inside scripts to determine execution permissions, URL matching pa

    JavaScript
    View on GitHub↗2,563
  • scriptscat/scriptcatscriptscat avatar

    scriptscat/scriptcat

    4,122View on GitHub↗

    Scriptcat is a user script manager and browser extension designed to install, execute, and manage custom JavaScript scripts to modify website behavior and extend browser functionality. It features a JavaScript sandbox environment that provides specialized APIs for storage, cookies, and system notifications, alongside a cloud-synced script repository to keep subscriptions and configurations consistent across multiple devices. The project includes an in-browser script editor for writing, testing, and debugging code directly within the browser. It also incorporates a cross-domain request engine

    TypeScriptchrome-extensiongreasemonkey-userscriptscriptcat
    View on GitHub↗4,122
  • tampermonkey/tampermonkeyTampermonkey avatar

    Tampermonkey/tampermonkey

    5,269View on GitHub↗

    Tampermonkey is a userscript manager used for browser behavior modification and web page automation. It allows for the installation and management of custom scripts that inject JavaScript into web pages to change their appearance or functionality. The project enables cross-browser script synchronization to maintain a consistent set of modifications across multiple devices. It provides a mechanism to manage custom userscript collections and synchronize them via cloud accounts. The system covers a broad range of capabilities including the automation of repetitive tasks on specific websites and

    JavaScript
    View on GitHub↗5,269
See all 30 alternatives to Userscripts→

Frequently asked questions

What does quoid/userscripts do?

Userscripts is a Safari browser extension that installs and runs custom JavaScript and CSS on websites through Apple's content script injection system. It provides a privileged execution context that allows userscripts to perform cross-origin HTTP requests and access clipboard functionality beyond standard browser sandbox restrictions.

What are the main features of quoid/userscripts?

The main features of quoid/userscripts are: Userscript Managers, Userscript Metadata Definitions, Userscript Lifecycle Controllers, Cross-Origin Request Engines, Cross-Origin HTTP Request APIs, Privileged Browser, Browser Extension Script Managers, Script Update Management.

What are some open-source alternatives to quoid/userscripts?

Open-source alternatives to quoid/userscripts include: violentmonkey/violentmonkey — Violentmonkey is a userscript manager extension and JavaScript injection framework. It allows users to install and… greasemonkey/greasemonkey — Greasemonkey is a Firefox extension that functions as a JavaScript userscript engine and manager, executing custom… scriptscat/scriptcat — Scriptcat is a user script manager and browser extension designed to install, execute, and manage custom JavaScript… tampermonkey/tampermonkey — Tampermonkey is a userscript manager used for browser behavior modification and web page automation. It allows for the… mdn/webextensions-examples — This project is a reference library and collection of practical code samples for building browser extensions using… bewlybewly/bewlybewly — BewlyBewly is a browser extension that customizes the Bilibili homepage, modifying its layout and appearance to…