Userscripts
Utvecklarverktyg
Gratis
Userscripts is an open source Safari extension that lets you save and run arbitrary bits of JavaScript (and CSS) code for the websites you visit.
Features:
- Open source
- No user tracking
Use cases:
- Automatic page redirection
- Website page manipulation (styling, element creation)
- Custom ad-blocking
- Custom code injection
- Custom style injection
If you're looking for a way to easily create quality of life Javacript code snippets for your web browsing experience, give Userscripts a try.
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Mer This application is easy to use and works great! I can add dislikes back on Safari using scirpits I can inject using this app! Should be more popular!
This application is easy to use and works great! I can add dislikes back on Safari using scirpits I can inject using this app! Should be more popular!
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: significantly reduces memory usage - #900 #901
- Resolve crash issue with large metadata userscript in iOS
- Prevent potential memory usage when there are too many scripts
1.8.6 11 jan.
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: temporarily disable auto scripts update check - #895
1.8.4 2025-12-27
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix(ios): mitigation measure for directory reset issue - #885
1.8.3 2025-12-10
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: avoid browser tabs content scripts memory leak - #864
1.8.2 2025-09-01
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- feat: surpoort `GM.xmlHttpRequest` upload property - #809
- https://github.com/quoid/userscripts/tree/release/4.x.x#api
1.8.1 2025-07-10
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- feat: GM.xmlHttpRequest add document type support and performance improvements - #710
- Add support `responseType: "document"` for `GM.xmlHttpRequest`
- New non-standard `contentType` key in `GM.xmlHttpRequest` response object
- perf: Optimized for transmission and processing of various data types
- fix: `GM.info.version` is missing #706
- feat: GM.xmlHttpRequest returns promise and supports multiple data types - #716
- `GM.xmlHttpRequest` send supports more data types and deprecates `binary` key #708
- `GM.xmlHttpRequest` return a promise resolved with response object #712
1.7.1 2025-03-26
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: further avoid potential thread crashes - #724
1.5.4 2024-09-22
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: avoid two potential thread crashes - #714
- fix(macos): popup window height and scrolling issues
1.5.3 2024-09-13
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: enforce stricter rules for new remote file types and make related improvements - #682
- fix: make `@grant none` work correctly - #693
- fix: avoid path trailing slash stripped in older os versions - #695
1.5.2 2024-09-03
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Highlights:
- In this release, introducing our new open source automated build and deployment process, where everything from the open source code to the app installed on your device is transparent and verifiable.
- We've fixed a compatibility issue that existed in visionOS (Designed for iPad) and you can now use this Safari extension in Apple Vision Pro, just like on the iPad and iPhone.
Changes:
- refactor(native): several significant improvements around preferences - #546
- With a new preference item, the logger is now disabled by default, and a toggle has been added in iOS and macOS.
- In iOS, the toggle is located in the `Userscripts` sub pane of the system `Settings` app.
- In macOS, the toggle is under the `DEBUG` menu in the menu bar of `Userscripts` app.
- The old save location will be smoothly and imperceptibly imported into the new preferences.
- Fully optimized storage and reading processes, eliminating potential kernel resources leaks.
- Only use shared containers and have updates between app and ext done auto via wrappers.
- In iOS, enable the feature of displaying the app's document directory to the system `Files` app.
- It also supports importing and exporting document content through `iTunes` or `Finder`.
- Supports in-place editing or viewing of third-party applications that supports file providers.
- This directory is automatically set by default when the app is launched for the first time.
- Optimize the first-time use experience, no longer require to manually set a directory.
- Retain the ability to change the save location and optimize relevant text prompts.
- fix(ios): improve initialization process make sure display document folder - #548
- refactor: update dev and build process and improvements - #560
- Some minor tweaks and optimizations to the iOS App WebView.
- Show informative text when using the default app document.
- Improved rendering flickering through min-height and min-width.
- Click on the current directory text to open the folder in Files app.
- Refactor the APIs append and injection process of user scripts in content scripts.
- Only parse UserJS code without APIs precode can reduce computation.
- This also incidentally fixes "Userscripts with quotes in their names break #401".
- Inject into page with closed ShadowRoot for better security.
- fix: correctly handle url containing hash but without search - #593
- fix: make the Open Extension Page button work stably - #616
- refactor: improve basic popup view structure and fix issues - #624
- ci: verifiable open source automated builds and deployments - #665
- fix: avoid potentially infinite hangs on async messages - #669
- fix: avoid potentially infinite hangs on async messages (revise) - #671
1.5.0 2024-08-21
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: correctly returns xhr errors when type is blob - #558
1.4.5 2023-11-01
- fix: update rules when toggle dnr item - #522
- refactor: improve native data update logic and triggers - #525
- refactor: update dependencies and improve accessibility - #528
- fix: make download button back to work in code editor - #537
- fix: properly clean up resource files no longer required - #538
- fix: restore @require resources injection in iOS devices - #539
- refactor: improve code of required resources cleanup - #540
- refactor(logger): reduce disk writes and improve privacy - #541
1.4.4 2023-10-04
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
fix: correct the setClipboard property accessor - #514
1.4.3 2023-07-17
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
fix: properly discharge xhr resources - #476
fix: disable dnr below safari 15.4 - #477
fix: revive javascript linter in editor page - #481
1.4.2 2023-05-30
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: metadata @match now for url path plus query string - #463
- fix: show toolbar count in settings and some improvements - #469
- fix: compatibility for Safari below 15.4 - #472
You should notice that our latest version provides you with more convenient features while keeping the size smaller. (^_^)v
1.4.1 2023-04-27
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - misc style and code changes - #374, #376, #433, #442, #443
- [macOS/iOS] - update default file name patterns (.user.js suffix now added) - #436
- [macOS/iOS] - refactor script installation experience from popup - #439
- [macOS/iOS] - fix permission for declarativeNetRequest - #458
1.4.0 2023-04-03
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - fix userstyle injection - #368
- [macOS/iOS] - minor code refactoring
1.3.3 2022-11-02
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - remove `use strict` statement from code wrap - #362
1.3.2 2022-10-30
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - bug fixes - #355
1.3.1 2022-10-24
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - fixed bug that prevented `closeTab()` API method from working - #310
- [macOS/iOS] - only pass valid `@grant` value to userscrupt - #307
- [macOS/iOS] - better error logging when injecting into content scope - #312
- [macOS/iOS] - script injection updates - #314
- [macOS/iOS] - use `Function()()` instead of `eval()` - #323
- [macOS/iOS] - fix bug causing scripts to be trashed when renaming - #317
- [macOS/iOS] - no longer using window.postMessage for API calls - #315
- [macOS/iOS] - updated userscript wrapper - #322
- [macOS/iOS] - put apis and wrapping process into content.js - #335
- [macOS/iOS] - use browser.runtime.connect refactor xhr api - #336
- [macOS/iOS] - settings experience optimization - #341
- [macOS/iOS] - misc. code cleanup
- [macOS] - auto close notifications - #330
1.3.0 2022-10-23
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] - GM.xmlHttpRequest onloadstart bugfix - #304 (thank you @spd2last!)
- [macOS/iOS] - GM.getTab if tab is null, return empty object - #306 (thank you @maggch97!
- [macOS/iOS] support for GM_info.script.icon - #302
- [macOS/iOS] update`@match` matching - #301
- [macOS] clarify acceptable blocklist values #283
- [macOS/iOS] fix userscript install checking bug when dom elements manipulated - #295
- [macOS/iOS] add GM.getTab and GM.saveTab - #296 (thank you @maggch97!)
- [macOS/iOS] further changed the way `@grant` interacts with `@inject-into`
- if `@inject-into` is not set, then `@inject-into` is set to `auto`
- if `@inject-into` is `auto`
- if `@grant`s are requested, then `@inject-into` is `content`
- if `@grant` is `none`, then `@inject-into` is `page`
- if page content security policy blocks script execution, `@inject-into` becomes `content`
- if `@inject-into` is `content`, all `@grant`s are provided
- if `@inject-into` is `page`, no `@grant`s are provided (+ warning in the console)
- thank you @scholtzm!
1.2.3 2022-08-28
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] fix `@grant none` from being disallowed in page injection context - #291
- [macOS/iOS] revert the default `@inject-into` value to `auto` - #265
1.2.2 2022-07-21
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS/iOS] update url validation for `@downloadURL` and `@updateURL` #274
- [macOS/iOS] fix css subframe injection - #268
- [macOS/iOS] change the way `@inject-into` works when `@grant` values are present - #265
- when `@grant` values are present, `@inject-into page` is disallowed
- this could change the way some script currently function
- SEE: https://github.com/quoid/userscripts/issues/265
- [macOS/iOS] `content` is now the default `@inject-into` value - #265
1.2.1 2022-07-19
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS] enable basic userscript linting when javascript linter running in extension page editor - #132
- [macOS/iOS] changed CSS injection to use browser.tabs.insertCSS(), this should circumvent CSP blocking
- [macOS/iOS] injection refactoring and optimizations
- [macOS/iOS] enable support for declarativeNetRequest (content blocking) userscripts using `@run-at` `request`
- [macOS/iOS] fix getValue default value bug (thanks @elyscape) - #241
- [macOS/iOS] style updates to iphone/ipad popup to resolve unreachable buttons- #243
- [macOS/iOS] fix url parsing to resolve invalid matching - #249
- [macOS] updated and re-implemented `@run-at context-menu` userscripts - #159
- [macOS/iOS] changed the frequency at which declarativeNetRequest scripts get updated
- [macOS/iOS] misc code/style fixes
1.2.0 2022-06-02
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- [macOS / iOS] update console messages when userscripts get injected - #149
- [macOS / iOS] - updated and included more values for GM.info - #229
- [macOS / iOS] make GM.info and GM_info an object rather than function - #229
- [macOS] fixed context-menu injection regressions
- [macOS] - limit userscript description length #207
- [macOS] - highlight search input text when focusing #199
- [macOS] - show full userscript directory path when hovering the label in app #214
- [macOS / iOS] - allow whitespace after opening tags in userscript, trim whitespace on metadata lines #218
- [macOS / iOS] - improve save error messages #218
- [macOS / iOS] - fix issue where async api methods were returning the wrong values #220 #221
- [macOS / iOS] - fix issue where GM.xmlHttpRequest wasn't returning data for responseType arraybuffer & blob #212 #222
- [macOS / iOS] - implement GM.setClipboard & GM_setClipboard api method
- [macOS / iOS] - fix issue where getting remote file contents failed when url had unicode characters #226
- [macOS / iOS] - allow user to cancel update checks #211
- [macOS / iOS] - implement GM.info & GM_info #188
- [macOS / iOS] - misc. code and style updates
1.1.0 2022-02-27
Visit the GitHub repository for help or to report bugs: https://github.com/quoid/userscripts/
Changes:
- fix: significantly reduces memory usage - #900 #901
- Resolve crash issue with large metadata userscript in iOS
- Prevent potential memory usage when there are too many scripts
Mer Version 1.8.6 11 jan.
Data samlas inte in Utvecklaren samlar inte in några data från den här appen.