Skip to content

Stash-KennyG/stash-userscripts

 
 

Repository files navigation

Stash Userscripts

Installation requires a browser extension such as Violentmonkey / Tampermonkey / Greasemonkey.

You may remove any unwanted userscripts from the bundle by removing the line that starts with // @require that corresponds to the userscript you wish to remove.

By default the userscripts only work for http://localhost:9999

If you access Stash from a different address, you will need to modify the userscript when you install it.

Find the line // @match http://localhost:9999/* and replace http://localhost:9999/* with your Stash address.

Pick and choose which userscript to install in the table below or install just Stash Userscripts Bundle.user.js to get all of them.

Script Name Description Plugin Required Install
Stash Batch Query Edit In Scene Tagger, adds button to batch update all query fields with a configurable combination of Date, Studio, Performers, and Title INSTALL USERSCRIPT
Stash Batch Result Toggle In Scene Tagger, adds button to toggle all stashdb scene match result fields. Saves clicks when you only want to save a few metadata fields. Instead of turning off every field, you batch toggle them off, then toggle on the ones you want INSTALL USERSCRIPT
Stash Batch Save In Scene Tagger, adds button to batch save all scenes. Opens a confirmation popup with clicked INSTALL USERSCRIPT
Stash Batch Search In Scene Tagger, adds button to batch search all scenes INSTALL USERSCRIPT
Stash Markdown Adds markdown parsing to tag description fields INSTALL USERSCRIPT
Stash New Performer Filter Button Adds button to performers page to switch to a filter by new performers tagger view INSTALL USERSCRIPT
Stash Open Media Player Open filepath link on scene page 'File Info' tab in an external media player when clicked ✔️ INSTALL USERSCRIPT
Stash Performer Audit Task Button Adds a button to the performers page to check for duplicate performer urls. Task output shown in stash logs ✔️ INSTALL USERSCRIPT
Stash Performer Image Cropper Adds ability to crop performer image from performer page INSTALL USERSCRIPT
Stash Performer Markers Tab Adds a Markers link to performer pages INSTALL USERSCRIPT
Stash Performer Tagger Additions Adds performer birthdate and url to tagger view. Makes clicking performer name open stash profile in new tab instead of current tab INSTALL USERSCRIPT
Stash Performer URL Searchbox Adds a performer URL search textbox to performers page for quicker searching by performer URL INSTALL USERSCRIPT
Stash Scene Tagger Additions Adds scene duration, filepath, and url to tagger view in the collapsible scene details sections. Adds shift-click to collapsible scene details buttons to open/close all. INSTALL USERSCRIPT
Stash Scene Tagger Colorizer In Scene Tagger, colorize scrape results. Matching fields are green, missing fields are yellow, and mismatching fields are red INSTALL USERSCRIPT
Stash Scene Tagger Draft Submit Adds button to Scene Tagger to submit draft to stashdb INSTALL USERSCRIPT
Stash Scene Tagger Linkify Turn all scene tagger result text referencing stash or stashbox studio and performer names into clickable links INSTALL USERSCRIPT
Stash Set Stashbox Favorite Performers Sync Stashbox favorite performers whenever a stash performer is favorited or unfavorited. Also adds button to performers page to sync all ✔️ INSTALL USERSCRIPT
Stash StashID Icon Adds checkmark icon to performer and studio cards that have a stashid INSTALL USERSCRIPT
Stash StashID Input Adds input textboxes to performer detail and studio detail pages for stashid entry. Also displays studio stashids on studio page without having to click edit to view INSTALL USERSCRIPT
Stash Stats Adds new stats to the stats page: marker count, favorite performer count, studios with stashid %, performers with stashid %, scenes with stashid % INSTALL USERSCRIPT
Stash Studio Image And Parent On Create In Scene Tagger, sets studio image and parent studio from StashDB when a studio is created ✔️ INSTALL USERSCRIPT
Stash Tag Image Cropper Adds ability to crop tag image from tag page INSTALL USERSCRIPT

Screenshots

Stash Batch Query Edit

Config

Scenes tagger

Stash Batch Result Toggle

Config

Scenes tagger

Stash Batch Save

Scenes tagger

Stash Batch Search

Scenes tagger

Stash Markdown

Tag description

Stash New Performer Filter Button

Performers page

Stash Open Media Player

System settings

Stash Performer Audit Task Button

Plugin tasks

System settings

Performers page

Stash Performer Image Cropper

Cropper

Stash Performer Markers Tab

Performer page

Stash Performer Tagger Additions

Performer tagger

Stash Performer URL Searchbox

Performers page

Stash Scene Tagger Additions

Config

Scenes tagger

Stash Scene Tagger Colorizer

Config

Scenes tagger

Stash Scene Tagger Draft Submit

Scenes tagger

Stash Scene Tagger Linkify

Config

Scenes tagger

Stash Set Stashbox Favorite Performers

Plugin tasks

System settings

Performers page

Stash StashID Icon

Performer page

Studio page

Studio page

Stash StashID Input

Performer page

Studio page

Stash Stats

Stats page

Stash Studio Image And Parent On Create

Scenes tagger

Stash Tag Image Cropper

Cropper

Userscript Functions Plugin

This additional stash plugin is required by some userscripts for their functionality

Requirements

Installation

Copy the whole folder userscript_functions to your stash plugins folder.

pip install requests pystashlib

Plugin settings can be updated from within the Stash settings under the System tab. The stash url and api key settings are automatically set for you when the system settings page is loaded.

System settings

  • The stash url is determined by the userscript based on the current page url you use to access stash.

  • The stash api key value is fully managed by the userscript. If you generate or clear your api key, the userscript will update the plugin config.ini api key value.

Plugin tasks:

Plugin tasks

Developing

Each userscript source is split into two files:

  • src/header - Folder with userscript metadata blocks
  • src/body - Folder with main script code

Execute py build.py to combine source files and generate:

  • a userscript bundle to dist\local for local development
  • individual userscripts and a bundle to dist\public for release

Build output directories:

  • dist\local - A userscript bundle with @require headers that load the script code from local files (src/body)
  • dist\public - Userscripts with @require headers that load the script code from this github repo

About

Stash Userscripts

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 82.2%
  • Python 17.8%