A collection of browser userscripts for enhancing web browsing experience. This repository allows easy reuse of userscripts across multiple browser instances and devices.
Userscripts are small JavaScript programs that modify web pages to add features, fix issues, or customize behavior. They run in your browser using a userscript manager extension.
Choose one of the following userscript managers for your browser:
Recommended userscript managers:
- FireMonkey - Firefox - Open source (MPL-2.0), Firefox-native, manages scripts + styles together
- Violentmonkey - Chrome | Firefox | Edge | Opera/Vivaldi/Brave - Open source (MIT), very active development
- Userscripts - Safari (macOS, iOS, iPadOS) - Open source userscript manager for Safari
- Tampermonkey - Chrome | Firefox | Edge | Safari - Popular cross-platform option
Note: Greasemonkey is also available for Firefox but is less actively maintained.
| Browser | Best Pick | Why |
|---|---|---|
| Firefox (desktop + Android) | FireMonkey | Open source (MPL-2.0), Firefox-native API approach, manages scripts + styles together (GitHub) |
| Chrome / Chromium | Violentmonkey | Open source (MIT), very active release cadence, broad WebExtensions support (GitHub) |
| Edge | Violentmonkey | Same reasons as Chrome; built for WebExtensions browsers (Get it) |
| Opera / Vivaldi / Brave, etc. | Violentmonkey | Explicitly supported in their "Get it" list (WebExtension-compatible browsers) (Get it) |
| Safari (macOS + iOS/iPadOS) | Userscripts | Open-source userscript manager for Safari, actively maintained, available on iOS + macOS (GitHub) |
- Browse the
_dist/directory — it contains the latest built versions of every script - Click on a
.user.jsfile - Click the "Raw" button on GitHub
- Your userscript manager should prompt you to install it
- Confirm the installation
Scripts auto-update: @updateURL points to a lightweight .meta.js file for version checks, and @downloadURL points to the full .user.js in _dist/.
Note for Safari users: Userscripts for Safari has a different installation process. See the Userscripts usage documentation for detailed instructions.
Alternatively, you can copy the script content and create a new script in your userscript manager.
userscripts/
├── autotask/ # Autotask-related userscripts (source)
├── chatgpt/ # ChatGPT-related userscripts (source)
├── cloudradial/ # CloudRadial-related userscripts (source)
├── general/ # General-purpose userscripts (source)
├── microsoft/ # Microsoft-related userscripts (source)
├── search/ # Search engine userscripts (source)
├── _dist/ # Built artifacts — do not edit (generated by CI)
├── _tools/ # Build and linting scripts
├── _templates/ # Template for creating new userscripts
├── .github/
│ └── workflows/ # GitHub Actions (semantic-release)
└── README.md # This file
Versions are managed automatically by semantic-release:
- Version is determined from git tags (last release), not from file contents
- All scripts share a single repo-level version
- Conventional Commits drive version bumps:
fix:→ patch bump (e.g. 3.0.0 → 3.0.1)feat:→ minor bump (e.g. 3.0.1 → 3.1.0)feat!:orBREAKING CHANGE:→ major bump
For contribution guidelines and script requirements, see CONTRIBUTING.md.
For the development workflow and build system, see DEVELOPMENT.md.
- Use the template in
_templates/userscript-template.user.js - Modify the metadata block with your script details:
@name- The name of your script@description- What your script does@match- URLs where the script should run
- Set
@updateURLtohttps://raw.githubusercontent.com/warthurton/userscripts/main/_dist/<name>.meta.js - Set
@downloadURLtohttps://raw.githubusercontent.com/warthurton/userscripts/main/_dist/<name>.user.js - Write your JavaScript code
- Save with
.user.jsextension - Install in your userscript manager for testing
- Place your userscript in the appropriate category directory
- Ensure the filename ends with
.user.js - Include proper metadata in the script header (see template)
- Commit with a conventional commit message (e.g.
feat: add new-script) - CI will build the
_dist/artifacts and publish a release
- Scripts auto-update via
@updateURL/@downloadURLin your userscript manager - All updates ship from the
_dist/directory on themainbranch - Version bumps happen automatically when changes merge to
main
To use these scripts across multiple browser instances:
- Clone this repository on each machine
- Install the userscript manager on each browser
- Install the scripts from your local repository copy
- Pull updates regularly to get the latest versions
- Greasy Fork - Userscript repository
- OpenUserJS - Another userscript repository
- Tampermonkey Documentation
- Greasemonkey Manual
Scripts in this repository are for personal use. Check individual script headers for specific license information.