dsh-ui-beautify

August 14, 2026 · View on GitHub

dsh 的 Web 界面(dsh web)提供的 Apple 风格「外观美化」套件——一个插件搞定动态壁纸、字体美化、粒子背景,并在设置里拥有独立的「外观美化」页。

本插件是 dsh-ui-background / dsh-ui-font / dsh-ui-particles 三个插件的合并形态,安装它即可替代三者;旧插件的设置会自动无缝迁移。

功能

背景(动态壁纸)

设置项作用
背景图片(每行一个)整页固定全屏背景;支持 http(s)://data:、本地 file:// / 绝对路径(经宿主 loopback 路由读取);多行自动轮播,切换时双图层交叉淡入
轮播间隔秒数,0 = 不轮播
Ken Burns 缓动缓慢缩放平移(60s ease-in-out),像 macOS 动态壁纸
毛玻璃模糊0–40px,壁纸虚化,文字更清晰
背景不透明度0–100%
透明背景侧栏与各层表面也透明

字体

设置项可选值
界面字体系统默认 / 霞鹜文楷 / Inter
代码字体SF Mono(默认)/ JetBrains Mono / Fira Code

非系统字体经 jsDelivr CDN 按需懒加载(font-display: swap),离线时优雅回退系统字体。

粒子

设置项可选值
启用开 / 关
风格极光渐变(CSS 光斑)/ 漂浮光点(canvas)/ 星光(canvas)
密度低 / 中 / 高

动画层位于壁纸之上、界面之下;跟随深浅色主题;页面隐藏自动暂停;prefers-reduced-motion 下极光动画关闭。

安装

# 从 GitHub 安装(本包已带构建产物,无需编译)
dsh plugin --profile web add github:Junt184/dsh-ui-beautify

# 本地软链开发
dsh plugin --profile web add link:/绝对路径/dsh-ui-beautify

装完重启 dsh web,打开「设置 → 外观美化」即可。

持久化与安全

  • 设置保存在浏览器 localStorage(键 dsh-ui-beautify:v1),首次加载自动迁移旧三个插件的 keys。Web 设置 API 对第三方命名空间有白名单限制(dsh-host-apiproxyWEB_SETTINGS_NAMESPACES,框架已知 deferred work),因此本插件客户端自包含持久化,不需要改核心。
  • 本地图片经宿主 loopback-only 路由 /dsh-ui-beautify/image?path=… 读取,非本机请求返回 403。

结构

dsh-ui-beautify/
├── package.json        # dsh.bundle.patch + dsh.client + exports["./client"]
├── cordis.patch.yml    # bundle patch:插入浏览器 roster 行(ui-beautify)
└── lib/
    ├── index.js        # 宿主半部:loopback-only 本地图片路由
    └── client.js       # 客户端半部:外观美化 section(背景/字体/粒子)+ 三引擎 + localStorage

MIT License。