Skip to content
dsh.fish
Bundle

dsh-plugin-dvd-bounce

DSH Web plugin: a floating DVD-style wordmark that drifts across the viewport and bounces off the browser edges, cycling color on every hit

Source
mervyn-teo
stars
1 stars
License
MIT
Updated
Updated 14 days ago

Readme

# dsh-plugin-dvd-bounce

<p align="center">
  <a href="https://github.com/mervyn-teo/dsh-plugin-dvd-bounce">
    <img src="assets/banner.png" alt="dsh-plugin-dvd-bounce banner — a floating DVD wordmark that bounces off the edges of your browser" width="100%">
  </a>
</p>

English | [中文](README.zh.md)

A [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH) Web
plugin that floats a disc-less **DVD** wordmark over the page and bounces it off
the browser edges, the way the old DVD-logo screensaver did. Every time it hits
an edge it reverses direction **and** cycles to a new colour. It is a
client-only bundle plugin (no host logic) that loads on every boot.

## Demo

<p align="center">
  <img src="assets/demo.gif" alt="dsh-plugin-dvd-bounce demo — the DVD wordmark drifts and bounces off the edges, changing colour on each hit" width="480">
</p>

## What it does

- Registers a click-through surface on the frame-wide `shell.overlay` slot, so
  the logo floats above the app and never blocks anything underneath.
- Starts at a random position with a random diagonal heading, then drifts.
- Reverses its horizontal or vertical direction each time it reaches an edge.
- Shifts the wordmark colour (a cycling hue) on every bounce.
- Nothing runs in the DSH host process — the whole effect lives in the browser.

## Files

| File | Purpose |
| --- | --- |
| `lib/client.js` | Browser half — the floating wordmark and its animation loop. |
| `lib/index.js` | Host half — a no-op; the plugin ships only for its client half. |
| `lib/invariant.js` | Registers the plugin with the DSH invariants service. |
| `cordis.patch.yml` | Composition patch that inserts the plugin row. |
| `package.json` | Package metadata (`dsh.bundle` + `dsh.client` manifest). |

## Install

```bash
dsh plugin --profile web add github:mervyn-teo/dsh-plugin-dvd-bounce
```

Then restart `dsh web` — the client bundle loads at boot.

The logo starts at a random spot and drifts on its own. There is no settings UI
by design; to tweak the size, speed, or colour step, edit the constants at the
top of `lib/client.js` (the `css` array and the `dx`/`dy`/`hue` values inside
`DvdBounce`) and reinstall.

## Requirements

- DSH with the `slots` service mounted (the web profile provides it).
- React 18, available as a peer dependency of the DSH client runtime.

## License

[MIT](LICENSE)

Install

dsh plugin --profile web add github:mervyn-teo/dsh-plugin-dvd-bounce#663de5467ddf33d73428fc4d987fd7fcf6047068

Profile: web

Source