npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-wallpaper-rotator

v1.0.0

Published

DSH 壁纸轮换插件:定时轮换应用背景壁纸(交叉淡化动效),内置 SVG 壁纸集,毛玻璃/压暗/文字阴影/背景不透明度等可读性调节,设置页可配置。

Readme

dsh-wallpaper-rotator

DSH(DeepSeek Harness)壁纸轮换插件:定时轮换应用背景壁纸,交叉淡化微动效,内置 SVG 壁纸集,毛玻璃 / 压暗 / 文字阴影等可读性调节,设置页一键配置,配置持久化。

安装

# GitHub 仓库(推荐)
dsh plugin --profile web add github:liceses/dsh-wallpaper-rotator

# npm 仓库(发布后可用)
dsh plugin --profile web add dsh-wallpaper-rotator

# 本地开发路径(仅本机可用)
dsh plugin --profile web add D:\path\to\wallpaper-rotator

安装后重启 dsh web 生效。卸载:

dsh plugin --profile web remove dsh-wallpaper-rotator

使用

重启后打开 设置 → 壁纸轮换

  • 默认使用内置壁纸集(4 张 SVG 渐变)立即开始轮换
  • 「图片文件夹」输入路径或点「浏览…」并「应用」,切换为自有图片(png/jpg/webp/gif/bmp/avif/svg);留空回到内置壁纸集
  • 可调:轮换间隔(秒/分/时)、过渡时长、顺序/随机、面板透明度、背景不透明度、壁纸压暗、毛玻璃模糊(0–24px)、文字阴影(三档)
  • 「立即切换」手动轮换,「重新扫描」刷新文件夹清单

配置

设置页修改后自动写入 $DSH_HOME/wallpaper-rotator.json(DSH_HOME 未设置时为 ~/.dsh),重启保留。也可直接编辑该文件:

{
  "folder": "",
  "intervalMs": 600000,
  "transitionMs": 1200,
  "mode": "sequential",
  "enabled": true,
  "panelAlpha": 80,
  "baseAlpha": 55,
  "scrim": 30,
  "textShadow": 1,
  "blurPx": 10
}

| 字段 | 默认 | 说明 | |---|---|---| | folder | "" | 图片文件夹;空 = 内置壁纸集 | | intervalMs | 600000 | 轮换间隔(毫秒) | | transitionMs | 1200 | 交叉淡化时长(毫秒) | | mode | "sequential" | sequential 顺序 / shuffle 随机 | | enabled | true | 总开关 | | panelAlpha | 80 | 面板(侧栏/卡片)不透明度 0–100 | | baseAlpha | 55 | 背景(对话区等主区域)不透明度 0–100 | | scrim | 30 | 壁纸压暗 0–90 | | textShadow | 1 | 文字阴影 0 关 / 1 轻微 / 2 明显 | | blurPx | 10 | 毛玻璃模糊 0–24px |

包结构

wallpaper-rotator/
├── package.json        # dsh.bundle.patch + dsh.client 声明(DSH web 插件标准格式)
├── cordis.patch.yml    # 插件行 { id: wallpaper-rotator, name: dsh-wallpaper-rotator }
└── lib/
    ├── index.js        # Host 半区:/plugins/wallpaper-rotator 路由
    └── client.js       # 浏览器半区:壁纸引擎 + 设置页(__ModuleLoader__ 格式)

Host 路由(webServer,最长前缀优先,与 client-modules 的 /plugins 兼容):

  • GET /plugins/wallpaper-rotator/list?folder=<path> — 扫描文件夹
  • GET /plugins/wallpaper-rotator/image/<name> — 图片字节
  • GET /plugins/wallpaper-rotator/builtin/<n>.svg — 内置壁纸
  • GET|POST /plugins/wallpaper-rotator/config — 配置读写

开发

纯 JavaScript,无构建步骤:改 lib/ 下文件后重启 dsh web 即可(本地 link: 安装直接生效)。校验:

node --check lib/index.js
node --check lib/client.js

浏览器半区是 window.__ModuleLoader__.load({ id, factory }) 格式,require("react") 解析平台模块表;Host 半区是标准 ESM Cordis 插件(exports { apply, inject, name })。

兼容性

  • 路由前缀、行 id、包名、配置文件名、主题覆盖 source(wallpaper-rotator)、CSS 类前缀(.dswp-)均唯一
  • 壁纸层仅使用 html::before/::afterz-index:-1)与 <html> 内联 CSS 变量,不触碰其他插件 DOM
  • 主题覆盖经 theme.overrideTokens 分层合成,与其他插件令牌覆盖共存
  • 设置页走 settings.section additive 槽位,不替换既有页面

License

MIT