Ocean Wave Theme / 大海海浪主题

前言

DeepSeek Harness(DSH)采用插件化架构,允许开发者通过插件定制界面。Ocean Wave Theme 是一款针对 dsh web 的主题插件,它通过 Canvas 渲染动态背景,将原本静态的页面背景替换为动态的海浪与鲸鱼场景,并利用设计令牌覆盖实现了半透明面板效果。

核心功能

该插件主要实现以下能力:

  • 多层动态海浪:使用 4 个 Canvas 层绘制波浪,包含泡沫边缘、太阳/月亮光晕以及闪烁的波光。
  • 鲸鱼游动动画:一条鲸鱼每 28 秒从左向右游过,骑在中间的波峰上,伴随尾迹、摆动的鳍和上升的气泡。
  • 半透明界面:通过设计令牌覆盖,使侧边栏和面板呈现半透明效果,背景的海浪可以在界面层级间透出。
  • 环境适配:主题跟随应用配色方案(data-ds-dark-theme),在标签页隐藏时自动暂停动画,并在开启 prefers-reduced-motion 时渲染静态帧。

安装与启用

通过 CLI 安装该插件:

dsh plugin --profile web add github:johnsonspirit/ocean-wave-theme

主题生效后可像其他主题一样进行切换或卸载。

实现结构

插件主要由以下文件组成:

  • index.js:宿主端逻辑(无操作,所有渲染在客户端)。
  • client.js:客户端逻辑,负责 Canvas 背景渲染与设计令牌覆盖。
  • cordis.patch.yml:补丁文件,用于在插件列表中插入该插件行。
  • locale/en.json、locale/zh.json:双语标题与描述。
  • assets/screenshot-*.png:展示用的截图。

注意事项

  • 运行平台:仅支持 dsh web 端(dsh.client.platform: web)。
  • 零依赖:插件无外部依赖、无网络请求且无需构建步骤。

源码与文档

更多细节请参考 GitHub 仓库 或 社区目录。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye