Skip to content

SysAdminDoc/ScriptVault

Repository files navigation

ScriptVault

ScriptVault

A powerful, open-source userscript manager built on Chrome Manifest V3

Version Manifest V3 License Chrome 120+

Chrome Web StoreFeaturesInstallationQuick StartSecurityContributing


Features

GM API — 24+ Functions

Full Greasemonkey/Tampermonkey API compatibility with promise-based GM.* async variants.

Storage Network UI Utilities
GM_getValue GM_xmlhttpRequest GM_addStyle GM_info
GM_setValue GM_fetch GM_notification GM_log
GM_deleteValue GM_download GM_registerMenuCommand GM_setClipboard
GM_listValues GM_unregisterMenuCommand GM_openInTab
GM_getValues GM_addElement GM_getResourceText
GM_setValues GM_getResourceURL
GM_deleteValues
GM_addValueChangeListener
GM_removeValueChangeListener

Plus GM_getTab, GM_saveTab, GM_getTabs for cross-tab state management.

Script Management

  • Auto-detect installation — Navigate to any .user.js URL
  • One-click toggle — Enable/disable scripts individually or globally
  • Auto-updates — Configurable update intervals with notifications
  • Per-script update check — Check and apply updates for individual scripts inline
  • Version tracking — Installed vs. available version comparison
  • Tags & search — Organize and filter scripts by name, description, or metadata
  • Popup quick-edit — Click any script in the toolbar popup to jump straight into the editor
  • Find Scripts — Search and install userscripts from Greasy Fork and other sources directly in the dashboard
  • Bulk operations — Select multiple scripts to enable, disable, update, reset, or delete with progress tracking
  • Per-script export — Export individual scripts as .user.js files

Advanced URL Matching

  • Full @match, @include, @exclude, @exclude-match support
  • User overrides — Add custom match patterns without editing script code
  • Per-pattern toggles — Disable individual original patterns per-script
  • Glob and regex pattern support

Cloud Sync

Sync scripts across devices with 5 providers:

Provider Method
WebDAV Self-hosted or any WebDAV server
Google Drive OAuth2 integration
Dropbox App folder sync
OneDrive Microsoft account integration
Browser Sync Chrome's built-in sync

Built-in Code Editor

  • Tabbed editing — Open multiple scripts simultaneously with browser-style tabs (middle-click to close)
  • Unsaved indicators — Visual dot on tabs with pending changes
  • CodeMirror with JavaScript syntax highlighting
  • 5 editor themes — Monokai, Dracula, Material Darker, Nord, Ayu Dark
  • Status bar — Line count and cursor position display
  • Code folding, bracket matching, auto-close
  • Search & replace (Ctrl+F / Ctrl+H)
  • Real-time userscript metadata linting
  • Open in vscode.dev for external editing

Security

  • Script isolationUSER_SCRIPT world via chrome.userScripts API
  • Blacklist system — Remote + manual blacklists
  • Permission analysis — Visual @grant permission breakdown on install
  • @connect validation — Restrict XHR domains
  • CSP handling — Works on sites with strict Content Security Policies
  • Zero telemetry — No phone home, all data stays local

Import & Export

  • ZIP — Full backup with scripts + settings
  • JSON — Text-based backup
  • File import — Drag and drop .user.js or .zip files directly into the dashboard
  • URL import — Install directly from any URL
  • Clipboard import — Paste script code directly

Internationalization

Available in 8 languages:

English • German • Spanish • French • Japanese • Portuguese • Russian • Chinese


Installation

From Source (Developer Mode)

  1. Clone or download this repository:

    git clone https://github.com/SysAdminDoc/ScriptVault.git
    cd ScriptVault
  2. Open Chrome and navigate to chrome://extensions

  3. Enable Developer mode (toggle in top right)

  4. Click Load unpacked and select the repository folder

  5. Chrome 138+: Click the extension's "Details" and enable Allow User Scripts

Chrome Web Store

Install ScriptVault from the Chrome Web Store


Quick Start

Installing Scripts

Method Steps
Direct URL Navigate to any .user.js URL — ScriptVault auto-detects it
Find Scripts Dashboard → click Find Scripts → search → one-click install
File drop Drag and drop a .user.js file onto the dashboard
Dashboard import Dashboard → Utilities → paste URL or code → Import
Create new Dashboard → click + → write script → Ctrl+S

Managing Scripts

Action How
Toggle Click the switch next to any script
Edit Click the script name — opens in a tab (multiple scripts at once)
Update Click the refresh icon on any script to check for updates
Export Click the download icon to export a single script
Delete Click the trash icon
View storage Click the database icon to inspect GM_getValue data
Bulk actions Select multiple scripts via checkboxes → choose action from dropdown

Keyboard Shortcuts

Shortcut Action
Alt+Shift+S Open ScriptVault popup
Alt+Shift+D Open Dashboard
Alt+Shift+E Toggle all scripts on/off
Ctrl+S Save script (in editor)
Ctrl+F Find in editor
Ctrl+H Find and replace
Ctrl+G Go to line

Supported Metadata

// ==UserScript==
// @name           Script Name
// @namespace      https://example.com
// @version        1.0.0
// @description    What the script does
// @author         Your Name
// @match          https://example.com/*
// @include        http://example.org/*
// @exclude        *://example.com/private/*
// @exclude-match  *://admin.example.com/*
// @grant          GM_getValue
// @grant          GM_setValue
// @grant          GM_xmlhttpRequest
// @require        https://code.jquery.com/jquery-3.6.0.min.js
// @resource       myCSS https://example.com/style.css
// @icon           https://example.com/icon.png
// @run-at         document-end
// @connect        api.example.com
// @downloadURL    https://example.com/script.user.js
// @updateURL      https://example.com/script.meta.js
// @supportURL     https://github.com/user/repo/issues
// @homepageURL    https://github.com/user/repo
// @license        MIT
// @antifeature    tracking
// @tag            productivity
// ==/UserScript==

@run-at Options

Value Timing
document-start Before DOM loads
document-body When <body> exists
document-end When DOM is complete (default)
document-idle When page is fully loaded

Security Model

Layer Protection
Script isolation Scripts run in isolated USER_SCRIPT world via chrome.userScripts API
Permission transparency Installation page shows all requested @grant permissions
Network restrictions @connect domains are validated before XHR requests
Blacklist protection Remote + manual blacklists block known malicious scripts
Zero telemetry No data collection, no phone home — everything stays local

Comparison

Feature ScriptVault Tampermonkey ViolentMonkey
Manifest V3 Yes Yes Yes
Full GM API (24+) Yes Yes Yes
Cloud Sync (5 providers) Yes Yes Yes
Tabbed Multi-Script Editor Yes No No
Built-in Script Search Yes No No
Bulk Operations w/ Progress Yes Yes No
4 UI Themes Yes No Yes
Open Source MIT No Yes
Free Yes Freemium Yes

Project Structure

ScriptVault/
├── manifest.json              # Extension manifest (MV3)
├── background.js              # Service worker — API, sync, script registration
├── content.js                 # Content script bridge (USER_SCRIPT <-> background)
├── pages/
│   ├── dashboard.html/js/css  # Main settings & editor UI
│   ├── popup.html/js          # Toolbar popup
│   └── install.html/js        # Script installation page
├── images/                    # Extension icons (16-512px, .ico)
├── lib/
│   └── codemirror/            # CodeMirror editor + addons
└── _locales/
    └── */messages.json        # 8 language translations

Contributing

Contributions are welcome. Feel free to open a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/my-feature)
  3. Commit your changes
  4. Push to the branch (git push origin feature/my-feature)
  5. Open a Pull Request

License

MIT License — see LICENSE for details.


Acknowledgments


ScriptVault v1.5.0
Your scripts, your rules — locked down and loaded

About

A powerful, modern userscript manager built with Manifest V3. Feature-rich yet lightweight, with Tampermonkey-inspired functionality.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors