Back to home@01Virex

dsh-deepshub

Pornhub-style parody reskin for the DeepSeek Harness web UI — orange/black pill-button theme, "Deephub" wordmark, 18+ entry gate & HD badges. Pure meme, no explicit content.

Stars
0
Language
JavaScript
Created
Sep 2, 2026
Updated
Sep 2, 2026
GitHub repo

Introduction

dsh-deepshub

English | 中文

npm version npm downloads GitHub stars license status

# One-line install
dsh plugin --profile web add dsh-deepshub

v0.3.2 — stable release

If this made you smile, give it a star — it keeps the memes flowing.

A Pornhub-style parody reskin for the DeepSeek Harness (dsh) Web UI — pure meme, no explicit content whatsoever: charcoal/near-black + PH orange palette (follows system light/dark), pill buttons, a rounded orange "Deephub" parody wordmark (bundled Baloo 2 ExtraBold), 18+ entry gate, "HD 1080p" / "🔴 LIVE" badges, a "today's hot pick" sidebar card — all through the official --dsw-* design tokens, so no functional copy changes and it uninstalls cleanly.

Installation

Two ways to install: the recommended dsh plugin add command, or the manual copy. Either way, you need to restart dsh web once after first install.

Option A: dsh plugin add (recommended)

The plugin's package.json declares a dsh.bundle.patch manifest, so it's recognized automatically after install — no extra flags needed. The command syntax is dsh plugin --profile <name> add <package> (e.g. --profile web):

  • From npm (easiest): dsh plugin --profile web add dsh-deepshub ← always installs the latest release
  • From a clone: dsh plugin --profile web add ./dsh-deepshub
  • From a release package: download the packaged tarball from the Release page, then dsh plugin --profile web add /path/to/dsh-deepshub-<version>.tgz.

Option B: manual install

  1. Put this project directory under your profile's node_modules (default C:\Users\<you>\.dsh\profiles\node_modules\dsh-deepshub\);

  2. Insert the following into the profile's cordis.patch.yml:

    - insert:
        - id: deepshub
          name: dsh-deepshub
    
  3. Restart dsh web and hard-refresh the browser (Ctrl+F5) — once the plugin's node half (lib/index.js) is enabled, the Host scans and loads the browser half (lib/client.js).

Features

  • PH-off palette: charcoal/near-black + #ff9000 (dark mode) and PH-style light gray + orange (light mode) — follows system theme, never overrides your preference;
  • Pill buttons: every button becomes a PH-style capsule;
  • Parody wordmark: the DeepSeek wordmark SVG → self-drawn "Deephub" in rounded orange type (Baloo 2 ExtraBold latin subset, auto-served by the node half); favicon + tab title follow;
  • "18+ entry gate": every DSH page load pops the classic 「This site contains high-intensity programming content」 confirm screen (dismissed per page session);
  • Code-block badges: "HD 1080p" corner tag on every code block; "🔴 直播中" (LIVE) on running tool blocks (stable data-running hook);
  • "Today's hot pick": a PH-style promo sidebar card (locale-text heuristic anchor under the "New session" button, floating fallback, dismissible via ×);
  • Full --dsw-alias-* / --dsw-specific-* / --dsw-static-deepseek-* token coverage — scrollbars, code, selection, bubbles and sidebar hovers all tinted orange.

Configuration

Built-in defaults give the full effect out of the box. Three override sources, highest priority first:

  1. localStorage (live debugging from the devtools console): window.dshDeepHub.setConfig({ accent: "#ff5500" }) / window.dshDeepHub.reset()
  2. config.json: copy config.example.json to config.json in the plugin root — the node half auto-serves it at /plugins/dsh-deepshub/config.json (for a link: install that IS the source directory, so a refresh applies it).
  3. Built-in defaults (see config.example.json).

Key fields:

FieldDefaultDescription
enabledtrueMaster switch
accent / accentHover / accentText#ff9000 / #ffa72e / #ffffffPH orange primary / hover / text on primary
wordmark / logoTexttrue / DeephubWordmark toggle and text
favicontrueSwap favicon
titletrueTab title
pillButtonstruePill buttons
ageGatetrue"18+ entry gate" (every page load)
codeBadgestrue"HD 1080p" / "🔴 直播中" badges
recommendCardtrue"Today's hot pick" sidebar card
debugfalseConsole logs [dsh-deepshub]

Uninstall: dsh plugin --profile web remove dsh-deepshub, or disable temporarily via the profile's cordis.patch.yml:

- id: deepshub
  name: dsh-deepshub
  disabled: true

Package layout

dsh-deepshub/
├─ package.json          # dsh.client (web) + dsh.bundle.patch declarations
├─ cordis.patch.yml      # inserts the dual-face plugin row into the cordis tree
├─ lib/
│  ├─ index.js           # node half: serves config.json + the wordmark font
│  └─ client.js          # browser half: tokens + pills + wordmark/favicon/title + gags
├─ assets/
│  ├─ deephub-bold.woff2 # Baloo 2 ExtraBold latin subset (wordmark font, OFL)
│  └─ OFL.txt            # Baloo 2 license
├─ config.example.json   # config template
└─ scripts/              # dev-only: validate / smoke-test / package-release

How it works (briefly)

The browser half is pure DOM/CSS and uses no ctx services:

  • Everything themes through the official design tokens (--dsw-alias-* etc.), redefined per theme on body{} (light) and body[data-ds-dark-theme]{} (dark), all !important — wins regardless of injection order;
  • The accent color runs through the plugin's own custom properties (--dsh-deepshub-accent-* on :root), so config changes re-theme instantly;
  • The wordmark is located via the stable #dsh-wordmark-* clipPath ids inside the official wordmark SVG — no build-hash classnames; a MutationObserver re-applies it if React re-renders the logo;
  • The 18+ gate, promo card and badges are self-built nodes / pure CSS hooks (pre::after, [data-running]::before) — nothing depends on hashed classes;
  • Unloading removes the style, restores title/favicon, disconnects the observer, and clears injected nodes via ctx.effect.

License

The plugin itself is MIT. The wordmark and palette are a parody and are unaffiliated with Pornhub; the bundled Baloo 2 font is used under the SIL Open Font License.