DSH Hub
dsh-theme-blackhole cover

jiangwangyang/dsh-theme-blackhole

dsh-theme-blackhole

UIWeb UI0 GitHub stars· updated 2026-08-21

A black hole theme plugin for the dsh (DeepSeek Harness) Web UI: a WebGL real-time ray-traced Schwarzschild black hole as the application background, paired with a deep-space glass panel palette, switchable from Settings > General > Theme - Black Hole.

Install

npx @deepseek-ai/dsh plugin --profile web add github:jiangwangyang/dsh-theme-blackhole

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-theme-blackhole DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-theme-blackhole.svg)](https://dshhub.dev/plugins/dsh-theme-blackhole)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from jiangwangyang/dsh-theme-blackhole, cleaned of badges and images.

dsh-theme-blackhole

English | 中文

A black hole theme plugin for the DeepSeek Harness (dsh) Web UI: a WebGL real-time ray-traced Schwarzschild black hole as the application background, paired with a deep-space glass panel palette, switchable from Settings > General > Theme - Black Hole.

Features

  • WebGL Schwarzschild black hole background: null-geodesic ray tracing renders gravitational lensing, the accretion disk and the photon ring in real time, with a slow automatic camera orbit
  • Deep-space glass panels: translucent dark token overrides plus backdrop blur let the black hole show through softly behind the content; the brand accent becomes accretion-disk amber
  • First-class theme: registered into the theme runtime; the settings row toggle syncs both ways with the appearance settings, persists across reloads, and boots without flashing the default theme
  • Performance-friendly with graceful degradation: half-resolution rendering, 30fps cap, honors the system reduced-motion preference, and falls back to a pure-black deep-space backdrop when WebGL is unavailable

Installation

This plugin relies on the webServer service of a web profile. It only works with profiles that include a web server (such as web); do not install it into headless profiles.

dsh plugin --profile web add github:jiangwangyang/dsh-theme-blackhole

Usage

After installing and starting, go to Settings > General > Theme - Black Hole:

  • Turn on: switches to the black hole theme; the toggle is persisted and survives reloads and restarts
  • Turn off: restores your previous built-in theme (light / dark / follow system); your original preference is never lost
  • Switch away from the appearance row: when you switch back to a built-in theme in the appearance settings, the toggle is written back to off, keeping the two settings consistent

How It Works

Overall Architecture

The plugin consists of a host side and a client side, plus two static assets:

PartFileResponsibility
Host sidesrc/index.jsServes /blackhole/* static assets (read from disk per request); registers the theme-blackhole settings namespace; injects boot assets into index.html when the toggle is on
Client sidesrc/client/index.jsBuild-free client bundle: registers the black hole theme into the ThemeRuntime, registers the settings row, and drives the DOM visuals according to theme activation
Paletteassets/blackhole.css--dsw-* design token overrides gated by html[data-dsh-blackhole]
Rendererassets/blackhole.jsSchwarzschild black hole WebGL renderer, exposing only the window.DshBlackhole = { start, stop } controller

Boot Injection and Gating

Related plugins