Releases: mattj85/SpookiUI
Release list
v1.13.0 — Pixel-art treat overhaul
SpookiUI v1.13.0 — Pixel-art treat overhaul
Highlights
- Lemmings redrawn as chunky pixel-art sprites that now walk up and down a stepped staircase instead of a flat ledge.
- Jumper reworked into an NES-style plumber scene: a recognisable red-cap/mustache/overalls sprite, randomly placed
?and brick blocks, the hero jumps only when a block is above him (and the block bumps when hit), plus SMB-style scenery — brick ground, green hills, bushes, drifting clouds, and a shuffling Goomba. - Chomper now reuses the same ghost sprite as the Ghosts treat (factored into a shared
ghost_bodyso the two can't drift apart). - Treat animation is now focus-only: unfocused windows show the plain terminal, or dimmed + desaturated when "dim unfocused" is enabled (requires a Ghostty build that exposes the focus uniform).
- Sliders (treat vibrancy and bounded numeric options such as
background-opacity) redrawn with width-1 ASCII glyphs so they render correctly at values below 100%.
Compatibility
No config-file or CLI changes. Fully backward compatible — existing configs, profiles, and treats keep working.
v1.12.1
Patch release.
- Treats — focus-only animation. The treat animation now plays only in the focused window regardless of the dim-unfocused setting. With dimming off, unfocused windows show the plain, untouched terminal; with it on, they dim + desaturate so the active window stands out.
- Sliders render cleanly everywhere. The opacity and treat-vibrancy sliders now draw with width-1 ASCII glyphs (
[,=,O,-,]) instead of box-drawing/circle characters, which some terminals render as double-width — that desynced the track and garbled the bar below 100%.
Homebrew: brew upgrade spookiui
v1.12.0
New treats
- Dasher — a blue speedster curls into a spin-dash and blazes across a checkered green hill, scattering spinning gold rings and trailing speed-blur. An original, IP-safe homage to 90s blue-blur speed platformers — plain shapes, no game artwork. Enable with
spookiui treats enable dasher. - Lemmings, revamped — the marching critters are redrawn as proper little sprites: a bright-green hair mop, a peach face, a royal-blue robe, swinging limbs, and a walk cycle, composited as solid sprites over dark background pixels.
Both are drawn only over dark background pixels so your text stays readable, and both respect the shared vibrancy and dim-unfocused settings.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.11.2
Maintenance
- Internal cleanup only — no functional change. Removed all code comments and collapsed verbose multi-paragraph docstrings down to single-sentence summaries. Behaviour, options, and CLI are identical to v1.11.1.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.11.1
Fixes
- Unfocused windows now dim even with an animated treat. With a treat enabled and dim-unfocused on, an inactive window kept playing the animation instead of dimming. The dim effect is driven by the shader re-evaluating when a window loses focus, but
custom-shader-animation = trueonly animates the focused surface — so unfocused windows froze mid-animation and never dimmed. SpookiUI now usescustom-shader-animation = alwayswhenever dimming is active, so unfocused windows keep re-rendering and dim as intended. When dim-unfocused is off (or your Ghostty lacks the focus uniform) it stays ontrue, leaving idle windows off the GPU.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.11.0
Seasonal treat packs 🎃❄
Four new background treats, grouped into seasonal packs. SpookiUI gently highlights the pack that fits today's date in treats list and the overlay — nothing is ever auto-enabled.
Halloween
- Ghosts — friendly cartoon ghosts drift by, bobbing and fading
- Spooky Eyes — pairs of glowing eyes blink open in the dark, then move on
- Cobwebs — faint spider webs shimmer across the corners
Winter
- Snow — soft snowflakes drift down and sway across a few depth layers
Enable from the treats overlay or e.g. spookiui treats enable ghosts. They obey the same one-at-a-time rule, vibrancy, and dim-unfocused settings as every other treat.
Fixes
- No more config-comment buildup — repeatedly toggling treats used to leave a growing trail of commented-out
custom-shaderlines in your config. SpookiUI now removes its own managed lines cleanly and prunes any existing buildup.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.10.2
Fixes
- Consistent animation speed across windows — treats now drive their motion off a per-focus clock (
iTime - iTimeFocus) on Ghostty builds that expose the focus uniforms. Previously a window that regained focus would lurch forward (looking "much faster" than the others); now every window animates from the same point at the same rate.
Treats
- Dim unfocused windows is now a toggle — dimming inactive windows is a persisted on/off preference, independent of any active treat. It even works with no animation running (a tiny no-op shader handles it). Toggle it from the Dim unfocused row in the treats overlay or with
treats dim on|off; it shows intreats list.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.10.1
Treats
- Vibrancy is now a menu option — the 0–100% vibrancy control is a navigable Vibrancy row at the bottom of the treats overlay (Space/Enter opens the slider), so it's discoverable rather than a hidden key. The
vshortcut still works, andspookiui treats vibrancy <0-100>is unchanged.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.10.0
Treats
- Vibrancy control — a single 0–100% slider fades the active treat's animation up or down (100% = the tuned default, 0% = invisible). Set it with
vin the treats overlay, orspookiui treats vibrancy <0-100>from the CLI. It's a global preference, so it applies to whichever treat you turn on. - Focus-aware dimming — on Ghostty builds that expose the
iFocusshader uniform, an unfocused window hides the treat and renders dimmed + desaturated, so the inactive window is easy to tell apart from the focused one. Older Ghostty builds are unaffected.
TUI
- Launch update prompt — a pre-launch update check greets you with a centered "update now / skip" prompt when a newer release is available, bounded so a slow network never stalls startup.
Update in place with spookiui update, or brew upgrade spookiui if installed via Homebrew.
v1.9.1
🐛 Bug fixes — Treats shader orientation
Fixes the vertical orientation of two game-inspired Treats introduced in v1.9.0. Terminal screen-space y grows downward, which two shaders had inverted:
- Barrels — barrels now rest on top of the slanted girders instead of hanging below them.
- Jumper — the hero now bounces on the ground beneath the scrolling question-blocks (and its head sits above its body), instead of hopping above the block row.
No other behaviour changes. Treats remain off by default, one at a time, and preserve any custom-shader you added yourself.