Skip to content

Theme-Night: refresh for Stash v0.31 (1.0) - #789

Open
nexalapp wants to merge 1 commit into
stashapp:mainfrom
nexalapp:theme-night-refresh
Open

nexalapp wants to merge 1 commit into
stashapp:mainfrom
nexalapp:theme-night-refresh

Conversation

@nexalapp

@nexalapp nexalapp commented Oct 4, 2026

Copy link
Copy Markdown

A refresh of Night for Stash v0.31, made inside the existing Theme-Night.css (no new stylesheet). It keeps the theme's identity: true black with one cinema red, uppercase bold red nav labels, red tabs, dates and labels, and the hidden donate, help and changelog items.

What changed

  • Colour: the palette moves into variables at the top: three blacks (page, bars, cards), one hairline grey and one red. Red text is lifted to #f2454b so it passes WCAG AA on black. The stock blue that leaked through (size slider, count icons, top-right icons, settings Edit buttons, the scene-panel toggle) and Stash's blue-grey panels (cards, task queue, menus, inputs) are now black, grey or red.
  • Buttons: primary actions are white outlines, secondary actions red outlines, Delete filled red, dialog confirms filled red. The old green logout and blue settings icons are red like the rest.
  • Top nav: the active page sits on a grey pill; words only on desktop, text centred in each box.
  • Toolbar (Stash v0.29+): dark bordered segments share a 34px height, with red icons and a red-filled active view; the filter-sidebar toggle no longer hangs off the page; the filter drawer is a step lighter than the page.
  • Pagination: centred with the result count on the same row; the floating bottom pagination is kept.
  • Cards: dark grey cards with a hairline edge; hover lifts the card 2px with a red edge, selection is a red ring; studio chip top-left; "1080P · 0:21" bottom right; red date, light grey description, counts centred and pinned to the bottom so they line up across a row; the favourite heart matches the select checkbox; studio and tag logos sit in a 16:9 box; performer portraits are 2:3.
  • Home page: carousel arrows sit inside the page and are centred on the cards; studio, scene and performer cards share one width, and every card in a row is the same height.
  • Performer page: full-bleed portrait fading into the header, red name and values.
  • Scene page: 32px red title, red labels, light grey details, grey tag chips, red scrubber, a circle behind the big play button; performers sit two per row in the details panel.
  • Settings: grey pill on the active item, red headings, red toggles.

Version 0.1 → 1.0. README gains a short description and screenshots.

Screenshots

Taken on an empty Stash v0.31.1 with demo content: fictional titles and names, and openly licensed photos blurred heavily so no one is identifiable (credits on the screenshots branch).

Scenes Scene
Scenes Scene
Performer Studios

Scenes on a phone A scene on a phone

Testing

Tested on Stash v0.31.1 (Docker) in Chrome at 1440×900, 800×900 and 390×844, on a real library of several thousand scenes and on an empty instance with demo content: home carousels, scene, performer, studio and tag grids with the size slider, the filter sidebar and selection toolbar, scene, performer and studio pages, settings and the task queue, dialogs and the Theme Switch menu. Validated with node validate.js --ci.

AI disclosure

This change was written with Claude (Anthropic) in Claude Code, from a design mockup. I reviewed the code and tested it on my own Stash install before submitting.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant