dsh-dracula-theme
🧛 Dracula theme for DeepSeek Harness (DSH): the classic dark palette — plus the Dracula Soft variant — registered into the built-in theme runtime, with a one-click skin picker in Settings → General.
Features
- Two faithful variants built from the official Dracula palette:
Dracula— the classic#282a36canvasDracula Soft— the gentler#343746background
- Core logic adopted from the official Dracula DeepSeek port (MIT): the canvas/brand
--dsw-static-*overrides and code-highlight palette are taken verbatim and translated into the DSH theme runtime. On top of that, full token coverage: neutral & canvas ramps, brand (purple), blue (cyan), red / green / amber state colors, alias surfaces, component-specific tokens (sidebar, bubbles, composer, menus) and the official Dracula syntax colors for code highlighting (--shiki-*). - One-click switching from Settings → General → Dracula theme, persisted across sessions.
Preview

The classic Dracula canvas (#282a36) mapped onto the full DSH surface stack — sidebar, conversations, code blocks — with the purple/cyan brand accents from the official Dracula DeepSeek port.
Palette
| Role | Color |
|---|---|
| Background | #282a36 |
| Dark background (base canvas) | #20212b |
| Current line / selection | #44475a |
| Foreground | #f8f8f2 |
| Comment | #6272a4 |
| Purple (brand) | #bd93f9 |
| Pink (keyword) | #ff79c6 |
| Cyan (link) | #8be9fd |
| Green (success) | #50fa7b |
| Yellow (string) | #f1fa8c |
| Orange (warn) | #ffb86c |
| Red (error) | #ff5555 |
Installation
# from npm (prebuilt, recommended)
dsh plugin --profile web add dsh-dracula-theme
# or from source
dsh plugin --profile web add https://github.com/ossFrankFrank/dsh-dracula-theme
Restart the profile, then pick the skin in Settings → General → Dracula theme.
Development
npm run generate # rebuild themes/*.json and lib/client.js from palette/dracula.json
The token tables are generated: edit the anchors in palette/dracula.json (colors, the official canvasRamp/brandRamp/codeTokens mappings, grayRamp, soft.background) and regenerate. lib/client.js is the browser bundle consumed by the DSH client runtime; lib/index.js is a no-op host entry.
License
MIT — see LICENSE. Structure modeled on dsh-catppuccin (MIT); token mapping adopted from the official Dracula DeepSeek port (MIT).
Development workflow
- Edit the anchors in
palette/dracula.json— colors, the official canvas/brand/code mappings,grayRamp,soft.background. npm run generate— rebuildsthemes/*.jsonandlib/client.js(the browser bundle).- Validate:
node scripts/check-themes.mjs(structural token check) — CI runs the same check plus a generated-artifacts diff. - Test in a live profile:
dsh plugin --profile web add /path/to/this/repo(local link), restart the profile, pick a skin in Settings → General → Dracula theme. - Release: bump
versioninpackage.json, commit, push,pnpm publish, then update the profile to the published version (dsh plugin --profile web add dsh-dracula-theme) and restart the app. The profile installs from npm, not from the working tree — local edits only take effect after publishing or via a local link.
No comments yet. Be the first to write one.