dsh-custom-theme-import
English | 中文
A DSH Web skin manager for mainstream DSH skin package format. It imports, previews,
uses, and manages skins without replacing DSH's native plugin system.
Features
- Import mainstream DSH skin package format from local paths or GitHub.
- Scan installed skins from the web profile's
node_modules.
- Preview, use, refresh, and manage skins.
- Skin preview thumbnails when the package ships
skin.json preview images.
- Host-side persistence with optional managed copies.
- UI language follows DSH automatically (Chinese / English).
Build
node build.mjs
node build.mjs --check
Install
From GitHub:
dsh plugin --profile web add -w github:Juryorca/dsh-custom-theme-import
From a local checkout:
dsh plugin --profile web add -w link:/path/to/dsh-custom-theme-import
Restart:
dsh --profile web
Open:
Settings → My Themes
Supported skin format
Mainstream DSH skin package format:
skin-package/
├── package.json
├── cordis.patch.yml
├── skin.json
├── lib/index.js
└── lib/client.js
Requirements:
package.json must declare dsh.bundle.
skin.json must exist.
lib/client.js must be a DSH ModuleLoader bundle exporting apply(ctx).
Collection repository
A GitHub repository or local path can contain multiple mainstream skins.
Common layouts are scanned automatically:
repo-root/
├── themes/<skin-id>/...
├── skins/<skin-id>/...
└── packages/*/skins/<skin-id>/...
Each <skin-id>/ is a full skin package (package.json, cordis.patch.yml,
skin.json, lib/index.js, lib/client.js).
Storage
- Library file:
~/.dsh/dsh-custom-theme-import/library.json
- Local path imports reference in place by default; you can opt in to copy
them into
~/.dsh/dsh-custom-theme-import/themes/<id>/ as a managed copy.
- GitHub/remote imports are cloned/downloaded into:
~/.dsh/dsh-custom-theme-import/themes/<id>/