mirror of
https://github.com/ChuckBuilds/LEDMatrix.git
synced 2026-10-04 22:35:08 +00:00
Skins: no current scoreboard plugin builds on src.base_classes, so the only skin hook (SportsCore._render_game) never runs. The plugin schema endpoint no longer injects the Visual Skin dropdown, the store hides and refuses "type": "skin" registry entries, and GET /api/v3/skins reports supported: false with a message. Stored skin config still loads and saves. src/skin_system/ and its tests are unchanged apart from the support flag. Docs: check_plugin.py/render_plugin.py examples use --plugin; document BasePlugin.get_update_interval() and its interaction with the manifest update_interval; CLAUDE.md drops the stale template line number and recommends display_manager.width/height. Preview size: new src/display_geometry.py holds the size computation and defaults DisplayManager uses (double-sided applied, chain_length default 2). The web preview, /display/current, Starlark magnify default, sync handshake and two dev scripts use it. Release: __version__ 3.4.0, CHANGELOG 3.4.0 section plus a 3.3.0 tag note. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
29 lines
1.1 KiB
Markdown
29 lines
1.1 KiB
Markdown
# skins/
|
|
|
|
> **Not supported yet.** The current scoreboard plugins don't render skins,
|
|
> so a skin placed here and selected in config has no effect, and the web UI
|
|
> and Plugin Store don't offer them. See
|
|
> [docs/SKIN_SYSTEM.md](../docs/SKIN_SYSTEM.md#status-not-supported-yet).
|
|
|
|
User-installable **visual skins** for the sports scoreboards. Each
|
|
subdirectory is one skin:
|
|
|
|
```text
|
|
skins/<skin-id>/
|
|
skin.json # manifest
|
|
skin.py # renderer (a ScoreboardSkin subclass)
|
|
preview.png # optional
|
|
```
|
|
|
|
- Install a skin: `git clone <skin repo> skins/<skin-id>`. The Plugin Store
|
|
refuses registry entries with `"type": "skin"` while skins don't render.
|
|
- Select it: set `"skin": "<skin-id>"` in the plugin's section of
|
|
`config/config.json`. The web UI no longer shows a Visual Skin dropdown.
|
|
- Build one: start from `example-classic-baseball/` and read
|
|
[docs/CREATING_SKINS.md](../docs/CREATING_SKINS.md). Validate with
|
|
`python scripts/validate_skin.py --skin <skin-id>`.
|
|
|
|
Skins survive plugin reinstalls/updates (that's why they live here and not in
|
|
the plugin's directory). A skin is Python at the same trust level as a
|
|
plugin — review before installing.
|